启动模式,时钟在单片机中算是一个比较重要的概念吧。
首先,关于启动模式,首先要清楚地是,它研究的是,stm32上电复位后,程序从何处开始执行的问题。
那么,在stm32中有几种启动模式呢?答案是三种。一,用户闪存存储器区;二,系统存储器区;三,内嵌SRAM存储器区。
来说第一种,用户闪存存储器区。它是设计用来存放用户写的代码的,程序员写的代码就被烧录到这里了。正常状态下,就要把stm32设置为今后处启动。第二种,系统存储器区。这算是一种很是规的启动模式吧。 它是用来实现ISP功能的。所谓的ISP,就是 In-System Programming(在系统烧录,或者是在系统编程)。这里的系统不是指操做系统,而是指,单片机固化在PCB板上,这么一个完整的设备系统。ISP不须要烧录器,也不须要把单片机从板子上卸下来。通常ISP经过串口把bin/hex文件直接ISP到单片机内部flash中去了。第三种,内嵌SRAM区,这也算是一种很是规的启动模式,该模式能够用来实现调试器调试功能的,不过不经常使用。
那么什么是时钟源呢?顾名思义,时钟源就是,时钟产生的源头。根据特定的须要,分为:纯内部,内外部,纯外部。纯内部的时钟,将全部的器件都封装到了CPU中,这就致使了,纯内部的时钟源不够精准。内外部的时钟源是,外部晶振与内部震荡电路协同工做,此种时钟源是最为经常使用的,也是最为可靠的。纯外部的时钟源,是直接在外部产生一个时钟,不须要额外的晶振什么的,此种方式须要额外的空间以及外设,成本相对较高。
stm32主频可以达到72MHZ,可是并不意味着它的内部可以直接产生72NHZ的频率,而是经过倍频作到的,而这其中的关键就是PLL(锁相环电路),它的做用就是,进行倍频。
stm32设有两套独立的时钟:HSx, LSx。若是要仔细划分的话,能够分为4套:纯内部,HSI, LSI;内外部,HSE,LSE。纯外部的时钟为:OSC_OUT,OSC32_IN程序员