1.STM32F4时钟树
对于CPU来讲时钟系统就像是脉搏一样,时钟系统频率的快慢决定了、指令执行的速度;和51单片机相比STM32F4的时钟系统比较复杂,这是因为STM32芯片本身有很多的外设、但这些外设并不是都需要和系统时钟一样高的频率,这就造成了STM32F4芯片有多个时钟源;比如看门狗电路、RTC电路只需要几十K的时钟源,同时时钟频率越快、电路的功耗就越大且抗干扰的能力会下降,所以对于较为复杂的MCU一般会采用多时钟源的方案来解决这些问题。以下是STM32F4时钟树框图:
2.STM32F4时钟源
STM32F4中有5个重要的时钟源:HSI、HSE、LSI、LSE、PLL;
其中可以分为3个类别,分别是:外部时钟(LSE、HSE)、内部时钟(HSI、LSI)、由倍频产生的PLL时钟,下面我们分别对这5个重要的时钟进行解释。
HSI:H代表高H、S代表速度Speed、I代表inner内部,HSI即代表内部高速时钟,内部高速时钟是由芯片内部的RC振荡器产生的一个16MHz时钟源,它可以作为系统时钟的时钟源、或者用于倍频产生PLL时钟源。
HSE:H代表高H、S代表速度Speed、E代表外部External,HSE即代表外部高速时钟,外部高速时钟是通过在芯片特定引脚处接入石英/陶瓷谐振器产生的一个4-26MHz的一个时钟源,当然通过直接将一个时钟源接入特定引脚来为芯片提供一个4-26MHz的时钟源也是可以的。
LSE:L代表低Low、S代表速度Speed、E代表外部External,LSE即代表外部低速时钟源;可通过在芯片特定引脚处接入32.768KHz的石英晶体来作为外部低速时钟源,LSE可以作为RTC的时钟源、这个时钟源虽然频率低但是更加精确,适合计时。
LSI:L代表低Low、S代表速度Speed、I代表内部inner,LSI即代表内部低速时钟;LSI是由芯片内部RC振荡器产生的一个32KHz的时钟源,供独立看门狗和自动唤醒单元使用;在芯片刚刚上电的时候一般都是使用的LSI待工作正常后可以切换时钟源;最后我们再来看下PLL时钟源。
PLL时钟源:PLL时钟源本质上是HSE、HSI通过PLL锁相环倍频输出产生的,STM32F4有两个PLL、分为主PLL、专用PLL;
主PLL由HSE、或者HSI提供时钟信号在倍频后可以输出两个不同的时钟PLLP、PLLQ,PLLP主要用于系统时钟(频率最高可达168MHz),PLLQ作为USB OTG FS的时钟源(48MHz)、随机数发生器、SDIO的时钟;
专用PLL(PLLI2S)用于生成精确的时钟源,可以在I2sjiekou实现高品质音频性能;
具体的时钟频率计算:HSE或HSI时钟源除以值为M的分频系数后、经过倍频系数为N的倍频器、在经过分频系数为P或Q的分频器后,得到PLLP或PLLQ的时钟频率
PLLP = 时钟输入源/M*N/P;
PLLQ= 时钟输入源/M*N/Q;
-
mcu
+关注
关注
146文章
16949浏览量
350116 -
看门狗
+关注
关注
10文章
559浏览量
70724 -
cpu
+关注
关注
68文章
10816浏览量
210980 -
STM32F4
+关注
关注
3文章
194浏览量
27982 -
时钟系统
+关注
关注
1文章
99浏览量
11688
发布评论请先 登录
相关推荐
评论