当前位置: 首页 > news >正文

STM32学习笔记---时钟树

目录

一、时钟树:M3---STM32F103

1、主要时钟来源

​2、时钟系统线路分析

HSE时钟

HSI时钟

LSE时钟

LSI时钟

PPLCLK ---锁相环时钟

SYSCLK ---系统时钟

HCLK时钟

PCLK1时钟

PCLK2时钟

3、时钟树简图

4、构成部分作用分析 

二、时钟树:M4---STM32F407

1、主要时钟来源

2、时钟简图 

​3、时钟系统线路分析

HSE时钟

HSI时钟

LSE时钟

LSI时钟

SYSCLK ---系统时钟

PPLCLK ---锁相环时钟

HCLK时钟

PCLK1时钟

PCLK2时钟

4、构成部分作用分析


为什么要有时钟?

STM32时钟系统主要的目的就是给相对独立的外设模块提供时钟,主要也是为了降低整个芯片的功耗,所有外设时钟默认都是关闭状态(disable)当我们使用某个外设就要开启这个外设的时钟(enable),不同外设需要的时钟频率不同,没必要所有外设都用高速时钟造成浪费,而且有些外设也接受不了这么高的频率,这也是为什么STM32有四个时钟源的原因,就是兼容不同速度的外设,STM32的四个时钟源分别为:HSE、 LSE、HSI、LSI。其中,一般情况下我们使用HSE时钟来作为我们的系统时钟,它可以用来驱动APB,DMA,Cortex等系统;而低速时钟一般用于驱动RTC

一、时钟树:M3---STM32F103

1、主要时钟来源

2、时钟系统线路分析

HSE时钟

来源:无源晶振(4-16M),通常使用8M。

作用:可不分频或2分频(频率/2)作为PLL锁相环的输入还可直接不分频作为系统时钟128分频作为外设RTC时钟的输入

HSI时钟

来源:芯片内部,大小为8M,当HSE故障时,系统时钟会自动切换到HSI,直到HSE启动成功。

作用:可直接作为系统时钟在2分频后作为PLL输入。HSI RC振荡器能够在不需要任何外部器件的条件下提供系统时钟。它的启动时间比HSE晶体振荡器短。然而,即使在校准之后它的时钟频率精度仍较差

LSE时钟

来源:芯片内部,LSE晶体是一个32.768kHz的低速外部晶体或陶瓷谐振器。它为实时时钟或者其他定时功能提供一个低功耗且精确的时钟源。

作用:直接作为RTC是时钟来源

LSI时钟

来源:内部芯片,LSI RC担当一个低功耗时钟源的角色,它可以在停机和待机模式下保持运行,LSI时钟频率大约40kHz(在30kHz和60kHz之间)。

作用:为独立看门狗自动唤醒单元(RTC)提供时钟

PPLCLK ---锁相环时钟

来源:选择HSI振荡器除2或HSE振荡器为PLL的输入时钟,和选择倍频因子,必须在其被激活前完成。一旦PLL被激活,这些参数就不能被改动。

作用:内部PLL可以用来倍频HSI RC的输出时钟或HSE晶体输出时钟(倍频数2~16倍),而经过倍频变成PLLCLK可以作为系统时钟源

 

SYSCLK ---系统时钟

系统时钟:SYSCLK,最高为72M(ST官方推荐的)

来源:HSI、HSE、PLLCLK

 

HCLK时钟

HCLK:AHB高速总线时钟,速度最高为72M。

作用:为AHB总线的外设提供时钟、为Cortex系统定时器提供时钟(SysTick)、为内核提供时钟(FCLK)。

来源:系统时钟分频得到,一般设置HCLK=SYSCLK=72

PCLK1时钟

PCLK1:APB1低速总线时钟,最高为36M。

作用:为APB1总线的外设提供时钟。1或2倍频之后则为APB1总线的定时器2~7提供时钟来源:HCLK分频得到,一般配置PCLK1=HCLK/2=36M

PCLK2时钟

PCLK2:APB2高速总线时钟,最高为72M。

作用:为APB2总线的外设提供时钟。为APB2总线的定时器1和8提供时钟APB2分频器还有一路输出供ADC分频器使用,分频后送给ADC模块使用。

来源:HCLK分频得到,一般配置PCLK2=HCLK=72M

 

3、时钟树简图

简图①

简图②

大树: 

小树:

4、构成部分作用分析 

二、时钟树:M4---STM32F407

1、主要时钟来源

2、时钟简图 

大树:

小树: 

3、时钟系统线路分析

HSE时钟

来源:无源晶振(4-26M),通常使用25M。

作用:M分频(频率/M)作为PLL锁相环的输入还可直接不分频作为系统时钟

HSI时钟

来源:芯片内部,大小为16M,当HSE故障时,系统时钟会自动切换到HSI,直到HSE启动成功。

作用:可直接作为系统时钟在M分频后作为PLL输入。HSI RC振荡器能够在不需要任何外部器件的条件下提供系统时钟。它的启动时间比HSE晶体振荡器短。然而,即使在校准之后它的时钟频率精度仍较差

LSE时钟

来源:芯片内部,LSE晶体是一个32.768kHz的低速外部晶体或陶瓷谐振器。它为实时时钟或者其他定时功能提供一个低功耗且精确的时钟源。

作用:直接作为RTC是时钟来源

LSI时钟

来源:内部芯片,LSI RC担当一个低功耗时钟源的角色,它可以在停机和待机模式下保持运行,LSI时钟频率大约32kHz。

作用:为独立看门狗自动唤醒单元(RTC)提供时钟

 

SYSCLK ---系统时钟

系统时钟:SYSCLK,最高为168M(ST官方推荐的)

来源:HSI、HSE、PLLCLK。

PPLCLK ---锁相环时钟

来源:选择HIS振荡器除2或HSE振荡器为PLL的输入时钟,和选择倍频因子,必须在其被激活前完成。一旦PLL被激活,这些参数就不能被改动。

作用:内部PLL可以用来倍频HSI RC的输出时钟或HSE晶体输出时钟,而经过倍频变成PLLCLK可以作为系统时钟源

HSE输入输出的计算:

PPL(HSE):25Mhz  /M分频 * N倍频 /   P分频

25Mhz  /   25   *  336   / 2 = 168Mhz

HSI输入输出的计算:

PPL(HSI):25Mhz  /M分频 * N倍频 /   P分频

PLL_M = 16

PLL_N = 336

PLL_P = 2

16Mhz  /   16   *  336   / 2 = 168Mhz

因为基于精度和稳定性要求、同步需求、灵活性和可扩展性以及可靠性考虑等方面的原因所以HSI一般不用,只有在HSE发生故障的时候,系统时钟会自动切换到HSI,直到HSE启动成功。

HCLK时钟

HCLK:AHB高速总线时钟,速度最高为168M。

作用:为AHB总线的外设提供时钟、为Cortex系统定时器提供时钟(SysTick)、为内核提供时钟(FCLK)。

来源:系统时钟分频得到,一般设置HCLK=SYSCLK=168M

PCLK1时钟

PCLK1:APB1低速总线时钟,最高为42M。

作用:为APB1总线的外设提供时钟。1或2倍频之后则为APB1总线的定时器2~7、12~14提供时钟

来源:HCLK分频得到,一般配置PCLK1=HCLK/4=42M

PCLK2时钟

PCLK2:APB2高速总线时钟,最高为84M。

作用:为APB2总线的外设提供时钟。为APB2总线的定时器1或8、定时器9~11提供时钟来源:HCLK分频得到,一般配置PCLK2=HCLK/2=84M

4、构成部分作用分析

同上STM32F03

相关文章:

  • 《基于AIGC的智能化多栈开发新模式》研究报告重磅发布! ——AI重塑软件工程,多栈开发引领未来
  • PHP+MySQL开发语言 在线下单订水送水小程序源码及搭建指南
  • Kruskal算法剖析与py/cpp/Java语言实现
  • python 小工具,获取 github 仓库信息
  • openFuyao开源发布,建设多样化算力集群开源软件生态
  • vue或者前端适配makedown推荐开源依赖
  • [科研实践] VS Code (Copilot) + Overleaf (使用 Overleaf Workshop 插件)
  • C++之string题目练习
  • P1923 【深基9.例4】求第 k 小的数
  • 2025年中国电商618年中大促策略分析:存量博弈与生态重构
  • 【设计模式】简单工厂模式,工厂模式,抽象工厂模式,单例,代理,go案例区分总结
  • GO语言进阶:掌握进程OS操作与高效编码数据转换
  • 使用 Frida 增强 FART:实现更强大的 Android 脱壳能力
  • 漫画Android:View是怎么绘制出来的?
  • k8s Headless Service
  • 阿里云服务器SSH远程登陆输错密码次数过多导致本地IP禁止登陆,网站和Linux宝塔面板无法访问,但是网站在其他网络访问一切正常
  • LLama-Factory使用教程-2025最新版
  • LLaDa——基于 Diffusion 的大语言模型 打平 LLama 3
  • Windows下安装并使用kubectl查看K8S日志
  • TCP三次握手/四次握手-TCP/IP四层模型-SSL/TLS-HTTP-HTTPS
  • 齐博企业网站/培训心得体会范文大全2000字
  • 深圳全网推广公司/百度seo排名优化费用
  • 网站结构怎么做适合优化/西安百度公司官网
  • 河北省建设厅注册中心网站/商品标题seo是什么意思
  • 国展网站建设/网站推广的几种方法
  • 培训门户网站源码/aso优化的主要内容