STMCU小助手
发布时间:2022-9-20 16:24
|
一、RCC系统概述 本文涉及的内容主要包含在以下几个文档中,文档可从ST官方网站与意法半导体stm32中国下载。- U; z, E" a3 r( T( V2 d 序号 文档名称4 H* z( s! S5 b8 V 9 c* u9 v) V% a$ _ AN2867(Application note)-oscillator-design-guide-for-stm8afals-stm32-mcus-and-mpus-stmicroelectronics AN5031(Application note)-Getting started with STM32MP151, STM32MP153 and STM32MP157 line hardware development# \5 o& w4 O ?- X$ n/ x) g; u; c6 C ) J$ c5 h7 h' c7 r% r7 D) x: C" G RM0436-Reference manual STM32MP157advanced Arm-based 32-bit MPUs8 V6 P8 j7 ?* P) d d 7 V2 A' W) v0 z$ s) R6 F Datasheet - production data -STM32MP157A&D8 \# `5 t0 H: ~- [, ^% P RCC(Reset and Clock Control)复位与时钟控制系统用于STM32MP1处理器系统与外设的时钟产生与控制,在时钟源选择上具备很高的灵活性。通过不同时钟比率,改进功率消耗。RCC时钟输入部分包含2个外部振荡器(HSE、LSE)、3个内部振荡器(HSI, CSI and LSI):! l9 w4 ~9 j y7 z. M) | . K! R: E1 w" B& f- c- k j6 G: L 外部振荡器:3 b* r+ \) j" t 64MHz HSI(High Speed Internal高速内部时钟,精准度1%)。 4MHz CSI RC(Low-power internal oscillator内部的低速振荡器,频率4MHz)。 32kHz LSI (Low Speed Internal低速内部时钟)。6 P( \+ b0 G& a+ O 内部振荡器: 8-48MHz HSE(High Speed External高速外部时钟,可接石英/陶瓷谐振器,或接外部时钟源)。 32.768kHz LSE(Low Speed External低速外部时钟,接频率为32.768kHz的石英晶体)。 " x% M w& O( H* [- X RCC提供4个PLL(Phase Locked Loop锁相环倍频分频输出): PLL1是专用于MPU时钟" g- X9 k# E* N m) V " I/ [% I2 k7 r% I( L6 u0 a PLL2主要用于:/ _# S" D% {! c! x. r3 i AXI-SS(Sub-System)总线时钟(包含APB4, APB5, AHB5 and AHB6总线时钟)。 DDR时钟 GPU时钟: w& [' f! |5 `, F3 L. g 8 |( c' }$ c/ v% K6 c: e PLL3主要用于: MCU时钟以及它们的总线时钟(APB1, APB2, APB3, AHB1, AHB2, AHB3 and AHB4总线时钟)。注意在MCU时钟部分保留了时钟安全系统CSS(Clock Security System)。+ V6 p8 J$ w' M9 x 外围设备的内核时钟2 L# F) M% k {% A( Z PLL4主要用于各种外围设备的内核时钟 系统在HIS时钟启动后,用户可通过应用程序进行时钟选择。7 D/ Z2 i# t4 R' Y" R* u % F$ Y2 K) ^1 A% z5 x 通过RCC时钟框图可以进一步了解这些时钟,如下图所示:" K: `# n7 `# B) I% z+ }5 C
; E" W9 H2 e3 D+ ]( o, L
《RM0436-Reference manual STM32MP157advanced Arm-based 32-bit MPUs》10.2章节 二、RCC管脚概述. Q& O/ c4 T3 u% E1 P 0 m: w$ G* J2 ]; W6 g9 s! A: u% Q @4 D
三、HSE与LSE时钟 ; u2 |+ G6 T3 V3 B' C 高速外部时钟信号(HSE)可以由两种可能的时钟源产生:/ b: f0 |3 a( } HSE外部时钟(参见图10)) N9 l8 _! W% }6 P2 X- L$ L HSE外部晶体/陶瓷谐振器(参见图11), v' ^/ ~6 M+ }4 x- D/ N1 j2 a " L! O( B+ z, J: Z6 C8 \+ |8 B & @, r: k2 C/ V! Q! v7 a
官方推荐的HSE时钟设计参考与取值:7 e/ @% V: u5 y; F# c & Y9 G. T- ?3 x' W4 {6 B; H8 d( ?
0 W# V( W, M- p5 s9 @! g- g
FS-MP1A开发板的HSE时钟配置(采用外部有源时钟,HSE旁路模式):) o# [/ l3 ~: N! M0 N* h6 R+ r7 X
3 W" u7 s1 D. |2 i N# I1 A4 K$ ? 外部时钟源(HSE旁路): 在这个模式中,必须为OSC_IN引脚提供外部时钟,它的频率范围为8 MHz ~50MHz(需要参考STM32MP15x数据手册的真实值),外部数字(VIL/VIH)或模拟(振幅为200 mV pk-pk最小)时钟信号占空比约为50%。 A3 {5 W* l6 D6 {) m% `) P \3 J) k0 F$ E9 b2 f 为了允许USB引导启动,启动阶段BootROM通过检查OSC_OUT连接自动选择HSE模式(位于NRST上升沿): / K4 ~: b& d4 h `$ j& A. p OSC_OUT连接GND (max 1 Kohm): HSE数字旁路(FS-MP1A开发板的模式) OSC_OUT连接VDD (max 1 Kohm): HSE模拟旁路8 ]0 h$ u, p4 Y4 \( h. x OSC_OUT高阻抗或连接到晶体/陶瓷谐振器:HSE晶体/陶瓷谐振器模式。 4 o/ v7 v2 C/ K* r1 J6 P" Y
当使用旁路时,可以通过PWR_ON启用外部时钟发生器以节省电能(待机状态下禁用)。在这种情况下,在PWR_ON上升沿出现后,OSC_IN时钟输入应该在10毫秒内稳定。 " f& J( y: N' F3 ?( O: | 低速外部时钟信号(LSE)可以由两种可能的时钟源产生:" a% [+ \6 E/ Q 5 i, P9 V1 \: I: S9 x0 f4 e* W LSE外部时钟(参见图12) LSE外部晶体/陶瓷谐振器(参见图13)! W3 U) w2 |1 I% ~' X4 { ; u0 `0 F1 c- `- q! B+ o/ M8 t # }7 T# E7 [* f9 B2 }+ U
& g6 S! ~5 c* a3 g/ n2 S FS-MP1A开发板的LSE时钟配置(采用外部晶体振荡器): ( I! n$ t$ ^) p: ^5 t* ^
- J/ i( K6 f% |" K( J; { 外部时钟源(LSE旁路):在这个模式中,必须为OSC32_IN引脚提供外部时钟,它的频率可到1MHz,外部数字(VIL/VIH)或模拟(振幅为200 mV pk-pk最小)时钟信号占空比约为50%。而OSC32_OUT引脚必须保持高阻抗(参见图12)。旁路模式的配置以及数字和模拟之间的选择是在RCC寄存器内完成。# d3 @* r: F2 o$ I' k8 b P4 U ; V) o# A: f h4 l LSE晶体是一个32.768 kHz低速外置晶体或陶瓷谐振器。它的优点是为实时时钟外设(RTC)提供低功耗,但高度精确的时钟源,用于时钟/日历或其他计时功能。, m2 B' a9 k, l4 V3 _ 谐振器和负载电容器必须连接到尽可能接近的振荡器引脚,以减少输出失真和启动稳定时间。负载电容值CL1和CL2必须根据所选振荡器进行调整。 请参阅ST微控制器专用应用说明(AN2867)中的振荡器设计指南和产品数据表中的电气特性章节了解更多细节,有关于晶振部分的PCB Layout指导说明。8 D3 D6 r* T$ x$ G 9 G& W' P- F3 i" X$ c; f, w 时钟设计方面的知识点相对较多,单纯的电路设计按照相关ST参考设计指导就可以完成,需要对时钟部分相关知识点深入了解的工程师可以详细阅读相关英文手册,本篇的讲解就到此为止了,文中若有不准确的地方,请以ST官方文档为主。 ———————————————— 版权声明:左月先生- K/ r& V1 S" H4 r2 h 4 c' h$ t4 ~" k5 ?6 i 3 q4 |& F( R: T9 F, E; M" P # T; ~+ t9 p# h9 \) `; r a, b! i, U |
STM32MP157双A核Linux + 自研RTOS双系统镜像免费下载
扩展STM32微处理器,实现高性价比、低功耗和灵活性能
STM32MP1 自举程序编程:USB DFU/USART 协议全解析
兔哥心中的ST中文论坛
我心中的ST中文论坛
STM32 开发者指南:ST.com 全新 MCU 产品阵容视觉布局深度解析
深度拆解 STM32MP1 Boot 链路
STM32串口自动识别波特率的原理
STM32MP135 MP157 MP257 CoreMark移植&&跑分对比&&多核心负载不均衡问题排查与解决
STM32--STM32 微控制器详解
微信公众号
手机版