您现在的位置是:首页 >技术教程 >《嵌入式系统》知识总结4:STM32时钟源网站首页技术教程

《嵌入式系统》知识总结4:STM32时钟源

Lv547 2023-07-02 00:00:03
简介《嵌入式系统》知识总结4:STM32时钟源

 此图说明了STM32的时钟走向,从图的左边开始,从时钟源一步步分配到外设时钟。

时钟源分类

时钟频率来说,分为高速时钟和低速时钟,高速时钟是供给芯片主体的主时钟,而低速时钟只是供 给芯片中的RTC(实时时钟)及独立看门狗使用。

芯片角度来说,时钟源分为内部时钟与外部时钟 ,内部时钟是由芯片内部RC振荡器产生的,起振较快,所以时钟在芯片刚上电的时候,默认使用内部高速时钟。而外部时钟信号是由外部的晶振输入的 ,在精度和稳定性上都有很大优势,所以上电之后再通过软件配置,转而采用外部时钟信号。

STM32有以下个时钟源

高速外部时钟(HSE):以外部晶振作为时钟源,晶振频率 可取范围4—16Mhz,一般采用8Mhz。

 高速内部时钟源(HSI):由内部RC振荡器产生,频率为 8Mhz,但不稳定。

 低速外部时钟源(LSE):以外部晶振为时钟源,主要供给 RTC模块,一般采用32.768khz

低速内部时钟源(LSI):由内部RC振荡器产生,也主要供 给RTC模块,频率大约为40Khz

 PLL为锁相环倍频输出,其时钟输入源可选择为HSI/2、HSE 或者HSE/2。倍频可选择为2~16倍,但是其输出频率最大不 得超过72MHz

SysCLK、HCLK、FCLK、PCLK1、PCLK2:

从时钟树的分析,看到经过一系列的倍频、分频后得到几个与开发密切相 关的时钟:

1)SYSCLK:系统时钟,是STM32大部分器件的时钟来源,可来源于三个时钟 源(HIS/HSE/PLL),由AHB预分频器分频分配到各个部件。

2)HCLK:由AHB预分频器直接输出得到,它是高速总线AHB的时钟信号,提 供给存储器、DMA及Cortex内核,是内核运行的时钟(cpu主频)。

3)FCLK:同样由AHB预分频器输出得到,是内核的“自由运行时钟” , “ 自由”表现在它不依赖HCLK,即使HCLK停止,FCLK也继续运行,它的存在 可以保证,在处理器休眠时也能采样到中断和跟踪休眠事件

4)PCLK1:外设时钟,由APB1预分频器输出得到,最大频率为36Mhz,提供 给低速外设

5)PCLK2:外设时钟,由APB2预分频器输出得到,最大频率72Mhz,提供给 高速外设

时钟管理寄存器

时钟控制寄存器(RCC_CR)

时钟配置寄存器(RCC_CFGR)

时钟中断寄存器(RCC_CIR)

(详细说明参加STM32参考手册)

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。