ehf1rb1inkz6402551429.png
6 U! \3 U6 n7 S0 p `
9 A# K+ D$ R. o: X$ E1 HSE 时钟 ; C' L1 h0 ?7 A" f
高速外部时钟信号(HSE)有以下几个时钟源: ? HSE 外部晶振/陶瓷谐振器 ? HSE 用户外部时钟,提供 OSC_IN 引脚 E, i: I! j* z6 y
谐振器和负载电容必须尽可能地靠近振荡器的引脚,以尽量减小输出失真和起振稳定时间。负载电容值必须根据所6 Z) u& S4 e8 h2 Z
选振荡器的不同做适当调整。4 O$ e% z: w) F5 a
lirxbqm1wnm6402551530.png
/ w7 q: i. n* l5 z ?1.1 外部晶振/陶瓷谐振器(HSE 晶振) 4 ]# ~! _% [1 k7 n4 a, o3 p! B( k
4到50MHz外部振荡器的优点是可以生成一个精度非常高的主时钟。有关详细信息,请参见数据手册的电气特性部分。 {. g; g# g$ y
) F1 V8 z6 F2 B* b" j) M
1.2 外部时钟源(HSE旁路)
{% u4 O; x! ?9 W在此模式下,必须提供外部时钟源,频率高达50MHz。必须使用占空比约为40%至60%的外部时钟信号(方波、正弦波或三角波)来驱动 OSC_IN引脚,具体取决于频率(参考数据手册),同时OSC_OUT引脚可用作GPIO使用。/ N% q" R* V& N* u( q$ W0 O9 G
2 HSI16时钟
C: Q$ m8 X6 @! m7 A, y- GHSI16时钟信号是从16MHz内部RC振荡器生成的。RC振荡器以低成本提供时钟源(无需使用外部元件)。它还比HSE晶振具有更快的启动时间。但即使校准后,频率也不如外部晶振或陶瓷谐振器的频率精度高。HSI16时钟还可作为备份时钟源(辅助时钟)使用,以防HSE晶振发生故障。
& ^# W/ O7 k# H }4 p6 I3 MSI(MSIS 和 MSIK)时钟 MSI由四个内部RC振荡器组成:MSIRC0 (48MHz)、MSIRC1 (4MHz)、MSIRC2 (3.072MHz)和 MSIRC3 (400kHz)。每个振荡器提供一个预分频器,从而提供1、2、3或4分频。由这些分频振荡器生成两个输出时钟:
6 h, o- Q9 S& S2 A) v- a U6 p: \9 ~? MSIS,可选择作为系统时钟 . G! w- ]6 ~5 T& U
? MSIK,可由一些外设选择作为内核时钟 7 b8 I4 s$ b- k9 O0 Z# C1 l
& J( ~: ]7 G; Y& S可由软件分别使用RCC_ICSCR1寄存器中的MSISRANGE[3:0]和 MSIKRANGE[3:0]字段(且MSIRGSEL=1)来调整MSIS和MSIK频率范围。提供十六个频率范围,由四个内部RC生成。6 m6 o5 ~: Q, I1 G7 |
如果HSE晶振发生故障,则MSI时钟还可作为备份时钟源(辅助时钟)。MSI振荡器可提供一个低成本(无外部元件)低功耗的时钟源。此外,当和LSE 一起用于PLL模式时,MSI可提供一个非常精确的时钟源,该时钟源可用于USB OTG-FS外设,并且PLL反馈,使系统以最大速率160 MHz运行。利用LSE进行硬件自动校准(PLL模式)
; I( t& y/ Q& m- }& v当应用中存在32.768 kHz 外部振荡器时,MSIS或MSIK可配置为PLL模式。此模式已启用,如下所示:2 J. k% Z' T: d
? 对于MSIS:在RCC_CR寄存器中将MSIPLLEN位置为1
' }4 u4 \/ j) B' l? 对于MSIK:在RCC_CR寄存器中将MSIPLLEN位置为0 0 X" d# W1 a4 r" L- |
, l1 N/ C3 g5 Q& k
如果MSIS和MSIK范围是从同一MSIRC源生成的,则PLL模式应用于 MSIS和MSIK。当配置为PLL模式时,MSIS或MSIK可利用LSE自动校准。该模式可用于所有MSI频率范围。48MHz时,处于PLL模式的MSIK可用
& B# x4 m1 a* `/ R; m于USB OTG FS器件,不需要外部高速晶振。; M" l% e. C: d, ~0 q- H' @
3 o& f9 _/ Z. Y8 s; t4 LSE 时钟 ; W1 ~2 d* Z2 {$ g& @7 F
LSE晶振是32.768kHz低速外部晶振或陶瓷谐振器。它为RTC(实时时钟)外设提供低功耗且精度高的时钟源,用于时钟/日历或其他定时功能。使用RCC_BDCR寄存器中的LSEDRV[1:0]位,可在运行时更改晶振驱动强度,以实现稳定性、短启动时间和低功耗之间的最佳平衡。外部时钟源(LSE 旁路)在此模式下,必须提供频率高达1MHz的外部时钟源。必须使用占空比约为50%的外部时钟信号(方波、正弦波或三角波)来驱动 OSC32_IN引脚,同时OSC32_OUT引脚可以作为GPIO使用。
# B; C+ x8 w7 K. C ~ S==========
4 F6 R- c% R- {6 u7 d# t2 [3 F3 I往期回顾:Keil中变量不被初始化方法1 m# v$ \' u# `3 \
如何提高单片机的运算效率之FPU
4 B5 \+ S, }2 G+ R! v" b蓝桥杯物联网教程汇总_240529' \ }- ]$ ?9 g- y- p$ o
==========( T7 _$ V, I, r/ Y$ ^3 K
1 U% K- @1 x. L+ G
se3tfv0ntrv6402551630.png
. M0 f. E' e- F5 P
6 F) N6 E) N; Z+ ?# ~* u0 c( v
qignrjgxy316402551730.png
0 p/ z( T0 X0 Z' R" w- v, I K5 F
9 n. m; D. n; S" E" p! Y2 O! p
ath2grjebid6402551830.png
|