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也是不能驱动系统时钟的
相关推荐
moxiaoran575326 分钟前
uni-app学习笔记三十--request网络请求传参
笔记·学习·uni-app
嘉陵妹妹43 分钟前
深度优先算法学习
学习·算法·深度优先
c7_ln1 小时前
STM32 低功耗设计全攻略:PWR 模块原理 + 睡眠 / 停止 / 待机模式实战(串口 + 红外 + RTC 应用全解析)
stm32·单片机·实时音视频·江协科技
乖乖是干饭王1 小时前
Linux系统编程中的_GNU_SOURCE宏
linux·运维·c语言·学习·gnu
待什么青丝2 小时前
【TMS570LC4357】之相关驱动开发学习记录2
c语言·arm开发·驱动开发·单片机·学习
小柯博客2 小时前
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
c语言·stm32·单片机·嵌入式硬件·物联网
行云流水剑3 小时前
【学习记录】如何使用 Python 提取 PDF 文件中的内容
python·学习·pdf
云山工作室3 小时前
一种停车场自动停车导航器的设计(论文+源码)
单片机·嵌入式硬件·毕业设计·毕设
虾球xz3 小时前
CppCon 2015 学习:CLANG/C2 for Windows
开发语言·c++·windows·学习
蓝婷儿4 小时前
6个月Python学习计划 Day 17 - 继承、多态与魔术方法
开发语言·python·学习