stm32学习:(寄存器3)系统架构

时钟系统

时钟树

在STM32中有3种不同的时钟源用来驱动系统时钟(SYSCLK):

  • HSI振荡器时钟(High Speed Internal oscillator,高速内部时钟)
  • HSE振荡器时钟(High Speed External(Oscillator / Clock),高速外部时钟)
  • PLL时钟(Phase Locked Loop 锁相环/倍频器):

还有2种2级时钟

  • LSI时钟(Low Speed Internal,低速内部时钟)
  • LSE时钟(Low Speed External oscillator,低速外部时钟)

为什么提供这么多的时钟?

节能!高速设备接高速时钟,低速设备接低速时钟,可以最大程度的达到节能效果。

各个时钟介绍

  1. HSE时钟
    1. 高速外部时钟是由外部时钟源提供,目前几乎所有的STM32单片机的设计都是在外部接一个8MHz的晶振,经过PLL倍频(9倍频)后得到一个72MHz的系统时钟。这个在启动文件可以看到
  2. HSI时钟
    1. HSI时钟信号由内部8MHz的RC振荡器产生,可直接作为系统时钟或在2分频后作为PLL输入。HSI RC振荡器能够在不需要任何外部器件的条件下提供系统时钟。它的启动时间比HSE晶体振荡器短。然而,即使在校准之后它的时钟频率精度仍较差
  3. PLL时钟
    1. 内部PLL用来倍频HSI RC的输出时钟或HSE晶体输出时钟。PLL的设置必须在其被激活前完成。一旦PLL被激活,这些参数就不能被改动。如果PLL中断在时钟中断寄存器里被允许,当PLL准备就绪时,可产生中断申请
    2. PLL时钟一般都是对外部的8MHz的时钟信号经过9倍频后,得到72MHz的时钟频率,这是STM32F1系列允许的最高时钟频率
  4. LSE时钟
    1. LSE晶体是一个32.768kHz的低速外部晶体或陶瓷谐振器。它为实时时钟或者其他定时功能提供一个低功耗且精确的时钟源
    2. LSE是不能驱动系统时钟
  5. LSI时钟
    1. LSI RC担当一个低功耗时钟源的角色,它可以在停机和待机模式下保持运行,为独立看门狗和自动唤醒单元提供时钟。LSI时钟频率大约40kHz(在30kHz和60kHz之间)
    2. LSI也是不能驱动系统时钟的
相关推荐
MartinYeung56 小时前
[论文学习]自主性如何重塑个性化对LLM智能体隐私关切与信任的影响
人工智能·学习
FellAveal7 小时前
【Go语言入门学习笔记】Part18.工作池与WaitGroup(也即协程池)
笔记·学习·golang
菜鸟‍7 小时前
【论文学习】MICCAI 2024 || SGSeg:通过自引导机制实现胸部X光片语言引导分割的无文本推理
人工智能·深度学习·学习
lazy H7 小时前
Git clone 怎么用?克隆项目及常见问题完整教程
大数据·git·后端·学习·搜索引擎·github
菜鸟‍7 小时前
【论文学习】arxiv 2024 || RoSIS:基于鲁棒框架重新审视文本提示式手术器械分割
人工智能·学习·计算机视觉
Freak嵌入式8 小时前
MCU 低功耗模式解析:时钟门控、电源门控、深度休眠
人工智能·python·单片机·嵌入式硬件·开源·依赖倒置原则·micropython
国科安芯8 小时前
FreeRTOS RISC-V 浮点上下文切换移植:在 IAR 工程中完整保存 FPU 寄存器
java·开发语言·单片机·嵌入式硬件·算法·系统架构·risc-v
躺不平的理查德8 小时前
STM32时钟树(Clock Tree)
stm32·单片机·嵌入式硬件
笨鸟先飞的橘猫9 小时前
只会脚本语言的游戏后端自我提升之路——c++学习(开篇)
学习·游戏
Z5998178419 小时前
c#软件开发学习笔记--Modbus-RTU通讯
笔记·学习·c#