STM32是一种基于ARM Cortex-M3内核的32位微控制器,它有五个时钟源,分别是HSI、H
SE、LSI、LSE和PLL。
- HSI是高速内部时钟,由内部RC振荡器产生,频率为8MHz,但不稳定。
- HSE是高速外部时钟,可以接石英/陶瓷谐振器或外部时钟源,频率范围为4MHz~16MHz,精度和稳定性较高。
- LSI是低速内部时钟,由内部RC振荡器产生,频率约为40kHz,主要提供给实时时钟模块和独立看门狗。
- LSE是低速外部时钟,接32.768kHz的石英晶体,也主要提供给实时时钟模块。
- PLL是锁相环倍频输出,其输入源可以选择为HSI/2、HSE或HSE/2,倍频系数可以选择为2~16倍,但输出频率不能超过72MHz。
STM32的系统时钟 (SYSCLK)可以选择为HSI、HSE或PLL,它决定了芯片的运行速度和性能。
STM32的外设时钟 (PCLK1和PCLK2)由系统时钟经过预分频器得到,它们提供给挂载在APB1和APB2总线上的外设。
STM32的定时器时钟 (TIMCLK)由外设时钟经过倍频器得到,它们提供给定时器模块。
STM32的USB时钟 (USBCLK)由PLL输出经过预分频器得到,它提供给USB外设。
STM32的SDIO时钟 (SDIOCLK)由系统时钟直接得到,它提供给SDIO外设。
STM32的FSMC时钟 (FSMCCLK)由系统时钟直接得到,它提供给存储器控制器FSMC。