STMCU小助手
发布时间:2021-10-13 14:41
|
花了近一个小时的时间,终于把STM32的时钟树图过了一遍,话不多说,先总结,再详细展开。时钟系统是什么,就像是人的脉搏一样,主要理解以下的几个概念。 , C+ j% \5 G* o4 D+ l RC震荡源:即RC电路,全称Resistance-Capacitance Circuits。一个 相移电路(RC电路)或称 RC滤波器、 RC网络, 是一个包含利用电压源、电流源驱使电阻器、电容器运作的电路。有RC串联电路,RC并联电路和RC串并联电路组成,可作为不精准时钟使用。(例如:看门狗时钟)* W9 H' p: L5 m3 X$ E! Y 时钟使能:简而言之,就是让时钟开始进行工作,即为使能。图中为半圆形6 n- G: {' c3 t O: O 选择器:用于选择时钟来源,如选择LSE,HSE,LSI图中描述为梯形结构。 RTC:实时时钟(Real-Time Clock)是PC主板上的晶振及相关电路组成的时钟电路的生成脉冲,RTC经过8254电路的变频产生一个频率较低一点的OS(系统)时钟TSC,系统时钟每一个cpu周期加一,每次系统时钟在系统初起时通过RTC初始化。8254本身工作也需要有自己的驱动时钟(PIT) % l3 x8 C8 w" R- g9 t [, b* ~! p 分频器:进行除法运算7 z2 Q+ ^2 u8 b; W4 [1 [1 i# E 倍频器:进行乘法运算 / E5 L- I+ Y' `$ B& T" E: g' z PLL(Phase Locked Loop): 为锁相回路或锁相环,用来统一整合时脉讯号,使高频器件正常工作,如内存的存取资料等。PLL用于振荡器中的反馈技术。 许多电子设备要正常工作,通常需要外部的输入信号与内部的振荡信号同步。一般的晶振由于工艺与成本原因,做不到很高的频率,而在需要高频应用时,有相应的器件VCO,实现转成高频,但并不稳定,故利用锁相环路就可以实现稳定且高频的时脉冲讯号。/ l8 F& }: w6 l% j7 H- e& v4 B9 N 2 R1 P- c) C; J 时钟源:HSI、HSE、LSI、LSE、PLL共5个。5 v* m7 W6 R& T4 J7 f, C: I# I + {/ z: ~9 C9 o, w" f1 M ①、HSI(high speed inner)是高速内部时钟,RC振荡器,频率为16MHz,精度不高。可以直接作为系统时钟或者用作PLL时钟输入。- k& g. H+ `( K/ \) J ②、HSE(high speed outer)是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~26MHz。 我所用的开版是10MHZ的晶振,经过倍频可以达到168MHZ。 ③、LSI(low speed inner)是低速内部时钟,RC振荡器,频率为32kHz,提供低功耗时钟。主要供独立看门狗和自动唤醒单元使用。看门狗对时钟精度要求不高!( M$ `1 U3 ?$ I: j. _- [% K3 ?0 M/ P ④、LSE(low speed )是低速外部时钟,接频率为32.768kHz的石英晶体。RTC ,这个是比较精准的时钟。 ⑤、PLL为锁相环倍频输出。STM32F4有两个PLL:: e ~: } u1 t: \
第一个输出PLLP用于生成高速的系统时钟(最高168MHz) 上边哪一个是主的 第二个输出PLLQ用于生成USB OTG FS的时钟(48MHz),随机数发生器的时钟和SDIO时钟。 下面哪一个是次的' o6 a3 _2 Y4 Q ?: j D$ G/ O 专用PLL(PLLI2S)用于生成精确时钟,从而在I2S(I方S)接口实现高品质音频性能。* ?5 E( |+ D6 c0 ~7 w
% b/ R) C) t3 s j: I ①、HSI振荡器时钟 ②、HSE振荡器时钟& u1 ^$ Z6 d h; m. A ③、PLL时钟 重点 PLL时钟计算: 输入 f=HSE' ?4 X5 v7 K8 u6 J PLL=(f*N)/(P*M);4 F3 f% K) }0 ?# F$ t" v+ `( I 例如:PLL=8MHz*N/(M*P)=8MHz*336/(8*2)=168MHz1 J6 z3 X5 p) m, L5 J8 V$ `# T 系统时钟 以太网时钟5 P+ M1 r( S2 K# k. O , B L2 O' s( U) ]3 e AHB (APB,HCLK。Cortex时钟) 最后上张图' r; Y% L; l2 y0 T
任何外设使用前必须使能相关时钟!!!' k2 L* ^, X* `* P# v% ` 任何外设使用前必须使能相关时钟!!!7 F1 Z0 f) i2 \9 T9 M$ v8 m 任何外设使用前必须使能相关时钟!!!# }& Y8 _# k9 m: l2 I6 b 9 G- k/ @. {! f% {) Z6 y8 q9 [: j |
【福利三:雨露均沾·逢7狂欢】之四:用一个定时器同步另外两个定时器输出PWM
【逢7发帖赢大礼】STM32开发之WIFI实时时钟
【逢7发帖赢大礼】STM32开发之指纹识别!
【逢7发帖赢大礼】STM32开发之环境空气质量监测
【逢7发帖赢大礼】STM32开发之人体实时运动信息监测!
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
【逢7发帖赢大礼】全网最简单的Arduino_STM32开发环境搭建教程!
STM32F4中文用户手册
STM32F400、STM32F402 Cortex-M4超值单片机
SPI 高温读错最后一位?STM32F42xx 官方根治方案
微信公众号
手机版