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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/web/82280.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

35.x64汇编写法(二)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 上一个内容:34.x64汇编写法(一) 上一个内容写了,汇编调…

钩子函数的作用(register_hook)

钩子函数仅在backward()时才会触发。其中,钩子函数接受梯度作为输入,返回操作后的梯度,操作后的梯度必须要输入的梯度同类型、同形状,否则报错。 主要功能包括: 监控当前的梯度(不返回值)&…

【头歌实验】Keras机器翻译实战

【头歌实验】Keras机器翻译实战 第1关:加载原始数据 编程要求 根据提示,在右侧编辑器补充代码,实现load_data函数,该函数需要加载path所代表的文件中的数据,并将文件中所有的内容按\n分割,转换成一个列表…

python中使用高并发分布式队列库celery的那些坑

python中使用高并发分布式队列库celery的那些坑 🌟 简单理解🛠️ 核心功能🚀 工作机制📦 示例代码(使用 Redis 作为 broker)🔗 常见搭配📦 我的环境📦第一个问题&#x1…

截图工具 Snipaste V2.10.7(2025.06.2更新)

—————【下 载 地 址】——————— 【​本章下载一】:https://pan.xunlei.com/s/VORklK9hcuoI6n_qgx25jSq2A1?pwde7bi# 【​本章下载二】:https://pan.quark.cn/s/7c62f8f86735 【百款黑科技】:https://ucnygalh6wle.feishu.cn/wiki/…

batch_size 参数最优设置

在深度学习训练中,batch_size(批量大小)的选择是一个需要权衡的问题,既不是越大越好,也不是越小越好,而是需要根据硬件资源、数据规模、模型复杂度和优化目标等因素综合决定。以下是详细分析:

【agent开发】部署LLM(一)

本周基本就是在踩坑,没什么实质性的进展 下载模型文件 推荐一个网站,可以简单计算下模型推理需要多大显存:https://apxml.com/tools/vram-calculator 我的显卡是RTX 4070,有12GB的显存,部署一个1.7B的Qwen3应该问题…

大数据-274 Spark MLib - 基础介绍 机器学习算法 剪枝 后剪枝 ID3 C4.5 CART

点一下关注吧!!!非常感谢!!持续更新!!! 大模型篇章已经开始! 目前已经更新到了第 22 篇:大语言模型 22 - MCP 自动操作 FigmaCursor 自动设计原型 Java篇开…

flutter常用动画

Flutter 动画基础概念 术语解释Animation表示动画的值,通常是一个 double (0.0 ~ 1.0) 或其他数值。AnimationController管理动画的时间进度和状态。需要 Ticker (vsync) 来驱动。Tween定义动画的取值范围,如从 0.0 到 1.0,从红色到蓝色。Cu…

Python打卡DAY43

复习日 作业: kaggle找到一个图像数据集,用cnn网络进行训练并且用grad-cam做可视化 进阶:并拆分成多个文件 我选择ouIntel Image Classification | Kagglezz,该数据集分为六类,包含建筑、森林、冰川、山脉、海洋和街道…

从多巴胺的诱惑到内啡肽的力量 | 个体成长代际教育的成瘾困局与破局之道

注:本文为“多巴胺,内啡肽”相关文章合辑。 图片清晰度受引文原图所限。 略作重排,未整理去重。 如有内容异常,请看原文。 年少偏爱多巴胺,中年才懂内啡肽 摘要 :本文通过生活实例与科学研究相结合的方式…

【音视频】H265 NALU分析

1 H265 概述 H264 与 H265 的区别 传输码率:H264 由于算法优化,可以低于 2Mbps 的速度实现标清数字图像传送;H.265 High Profile 可实现低于 1.5Mbps 的传输带宽下,实现 1080p 全高清视频传输。 编码架构:H.265/HEVC…

Python训练营打卡 Day26

知识点回顾: 函数的定义变量作用域:局部变量和全局变量函数的参数类型:位置参数、默认参数、不定参数传递参数的手段:关键词参数传递参数的顺序:同时出现三种参数类型时 ——————————————————————…

PH热榜 | 2025-05-29

1. Tapflow 2.0 标语:将你的文档转化为可销售的指导手册、操作手册和工作流程。 介绍:Tapflow 2.0将各类知识(包括人工智能、设计、开发、营销等)转化为有条理且可销售的产品。现在你可以导入文件,让人工智能快速为你…

GitHub 趋势日报 (2025年05月30日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 833 agenticSeek 789 prompt-eng-interactive-tutorial 466 ai-agents-for-beginn…

Cesium 8 ,在 Cesium 上实现雷达动画和车辆动画效果,并控制显示和隐藏

目录 ✨前言 一、功能背景 1.1 核心功能概览 1.2 技术栈与工具 二、车辆动画 2.1 模型坐标 2.2 组合渲染 2.3 显隐状态 2.4 模型文件 三、雷达动画 3.1 创建元素 3.2 动画解析 3.3 坐标联动 3.4 交互事件 四、完整代码 4.1 属性参数 4.2 逻辑代码 加载车辆动画…

相机--相机标定

教程 相机标定分类 相机标定分为内参标定和外参标定。 内参标定 目的 作用 原理 外参标定

JS手写代码篇---手写类型判断函数

9、手写类型判断函数 手写完成这个函数:输入一个对象(value),返回它的类型 js中的数据类型: 值类型:String、Number、Boolean、Null、Undefied、Symbol引用类型:Object、Array、Function、RegExp、Date 使用typeOf…

量子物理:初步认识量子物理

核心特点——微观世界与宏观世界的差异 量子物理(又称量子力学)是物理学中描述微观世界(原子、电子、光子等尺度)基本规律的理论框架。它与我们熟悉的经典物理(牛顿力学、电磁学等)有根本性的不同,因为微观粒子的行为展现出许多奇特且反直觉的现象。 简单来说,量子物…

springboot配置cors拦截器与cors解释

文章目录 cors?代码 cors? CORS(跨域资源共享)的核心机制是 由后端服务器(bbb.com)决定是否允许前端(aaa.com)的跨域请求 当浏览器访问 aaa.com 的页面,并向 bbb.com/list 发起请求时&#…