蓝色四边形是时钟实训报告源灰色四边形是选择器,另外一种颜色的是(预)分频器;比如32MHz经过二分频就是16MHz
5个时钟实训报告源,一个系统时钟實训报告(SYSCLK)
HSI:高速内部时钟实训报告(大约8MHz);由RC振荡器产生RC振荡器产生的时钟实训报告是不稳定的
HSE:高速外部时钟实训报告(4~16M, 正點原子的8M)晶振产生
PLL:锁相环;用来倍频的(2~16倍),输出一个PLLCLK时钟实训报告
上面三个时钟实训报告都可以作为系统时钟实训报告的来源
CSS:时钟实训报告监控系统。它有什么用呢一般来说,都是选择HSE时钟实训报告作为系统时钟实训报告但是由于HSE的时钟实训报告来源是外部的;可以会出现某些意外:比如晶振不起振了;这时候CSS就会选择HSI作为系统时钟实训报告。
LSE:低速外部时钟实训报告频率一般为:32.768KHz,外接晶振产生一般用来给RTCCLK使用;RTCCLK是实时时钟实训报告,
LSI:低速内部时钟实训报告频率约为40KHz,由RC振荡器产生;主要功能给独立看门狗时鍾实训报告使用
上述是五个时钟实训报告源信号
SYSCLK时钟实训报告经过AHB预分频器(分频因子为1,2,4,8,16,32,64,128,256)可以给HCLK时钟实训报告;或者经过AHB预分频器在經过APB1预分频器变成36MHz的时钟实训报告,给挂在APB1总线下的低速器件使用或者经过APB2预分频器变成72MHz的时钟实训报告信号给挂在APB2总线下的高速器件使用。
- HSI是高速内部时钟实训报告RC振荡器,频率为8MHz精度不高。
- HSE是高速外部时钟实训报告可接石英/陶瓷谐振器,或者接外部时钟实訓报告源频率范围为4MHz~16MHz。
- LSI是低速内部时钟实训报告RC振荡器,频率为40kHz提供低功耗时钟实训报告。WDG
- LSE是低速外部时钟实训报告接频率为32.768kHz的石英晶体。RTC 、
- PLL为锁相环倍频输出其时钟实训报告输入源可选择为HSI/2、HSE或者HSE/2。
倍频可选择为2~16倍但是其输出频率最大不得超过72MHz。 - 系统时钟實训报告SYSCLK可来源于三个时钟实训报告源:
-
STM32可以选择一个时钟实训报告信号输出到MCO脚(PA8)上可以选择为PLL
输出的2分频、HSI、HSE、或者系统时钟实训报告。 -
任何一个外设在使用之前必须首先使能其相应的时钟实训报告。
- APB1ENR寄存器:APB1总线上外设时钟实训报告使能
- APB2ENR寄存器:APB2總线上外设时钟实训报告使能
- CR 寄存器:HSIHSE,CSSPLL等的使能和就绪标志位,因为有些时钟实训报告源刚使能完不一定能马上稳定需要等一段時间,当稳定之后就会在该寄存器相应的位置位通过查看寄存器的值就可以知道该时钟实训报告源是否已经稳定
- CFGR寄存器:时钟实训报告源的选择和分频系数的设定,可以看上图
上述的寄存器在库函数版本中都有相应的库函数可以调用。
前面系统初始化的函数茬ST官方的固件库里面都设置好了直接设置的寄存器,因此不需要自己手动使能
- stm32中文参考手册