1.起因
说来也碰巧,我的第一篇博客就是写STM32启动文件相关的知识!!!
然而现在,我再次写STM32启动文件相关的内容是因为我发现了太多我曾经不知道的技术细节,而这些技术细节都是我学过cortex-a系列的芯片之后(脱离了keil这个集成开发环境,在linux下编程)回过头来再看cortex-m系列的芯片的时候领悟到的。
keilMDK封装好了很多技术细节,这是你在使用keil的时候无法了解到的!!!
我发现了STM32启动文件有这么多技术细节(可能这些技术细节很多大佬已经知道了),我也希望这些技术细节可以让更多的人知道,希望有更多的人了解STM32的详细的启动流程,不是仅仅停留在代码的层面,而是可以深入cpu内部,看一看,STM32上电复位的流程到底是什么样的。当你把STM32的启动流程详细地了解之后,你会发现你的视野会更加地开阔。并且,对于其他芯片的启动流程有着指导思想的作用,达到触类旁通的效果。
说到底,就是分享技术
之前我写的那篇博客只是把启动文件的代码看懂,并没有真正深入的了解stm32启动的详细流程(尽管当时我还是自以为深入了解了的)。而本系列的文章都是基于之前我写的那篇文章(STM32之启动文件的详解),在它的基础之上进行深入的剖析(如果发现那篇文章与本系列文章有不符的地方,以本系列文章为准),不局限于代码,进入cpu内部,带你领略真正的STM32启动流程。
2.方式
STM32启动流程,如果仅仅是按顺序的方式一次讲述STM32的启动流程,一篇文章就够了,但是我想再讲流程的过程当中,穿插很多一些可能与启动流程不是直接相关的,但是对于你更深层次的了