STM32F10X时钟树通俗解析

时钟

STM32为了实现低功耗, 外设的时钟默认关闭, 需要使用外设时, 编程设置时钟信号才能正常工作.

Tips: EXTI的时钟默认打开

缩写

RCC: Reset and Clock Control 复位和时钟控制
HSE: High Speed Exernal clock signal 高速外部时钟信号
HSI: High Speed Internal clock signal 高速内部时钟信号
LSE: Low Speed External clock signal 低速外部时钟信号
LSI: Low Speed Internal clock signal 低速内部时钟信号
AHB: Advanced High performance Bus 高级高性能总线
APB: Advanced Peripheral Bus 高级外围总线
PLLCLK: Phase Locked Loop Clock 锁相环时钟
SYSCLCK: System Clock 系统时钟

分析

这是以库函数时钟系统函数SetSysClockTo72()的编程流程解析
时钟树框图 + 手残画法 如下
STM32F10X时钟树通俗解析
解析:

  1. HSE振荡器输入8Mhz不分频走入PLLXTPRG, 再经过PLLSRC
  2. 在PLLMUL倍频中选择x9得到72MHz, SW选择PLLCLK, PLLCLK=72MHz
  3. AHB预分频器选择/1得到72MHz, 从此进入不同线路的外设
  4. 由于PCLK1的最大输入时钟是36MHz, 所以APB1预分频器选择/2=36MHz
  5. 由于APB1的预分频系数=1, 所以TIMXCLK的时钟输入为x2=72MHz
  6. 由于PCLK2的最大输入为72MHz, 则APB2的预分频器选择为/1=72MHz

以此类推…

SHOUT OUT TO
STM32 F103 时钟树详解