利用STM32CubeMX解读时钟树

8654910e93a46df4112f73814635436f.png

0d59c92777c75f9bd3636efeeebd0c3d.png

1,低速时钟

LSE是外部晶振作时钟源,主要提供给实时时钟模块,所以一般采用32.768KHz。LSI是由内部RC振荡器产生,也主要提供给实时时钟模块,频率大约为40KHz。(LSE和LSI)只是提供给芯片中的RTC(实时时钟)及IWDG(独立看门狗)使用。

2,中速时钟

MSI RC是“中速内部时钟”或“中速内部振荡器”,是STM32L系列独有的时钟,RC表示这个时钟源是通过RC振荡器实现的,它可提供7种频率的时钟源,范围:65.636kHz~4194KHz。可以直接选择为SYSCLK(系统时钟)的时钟源,也可以作为MOC(时钟输出)的时钟源。

3,高速时钟    

HSI RC是内部高速时钟,可以直接选择为系统时钟,可以作为PLL(锁相环倍频输出)的时钟源,还可以作为ADC,USART1,USART2,I2C1,I2C3,LPTIM(低功耗定时器),LPUART(低功耗串口)和MCO(主时钟输出)的时钟源,是最重要的时钟之一。

4,锁相环

PLL代表锁相环,在STM32中PLL可以被用于倍频或者分频SYSCLK(系统时钟),其倍数可以是外部高速晶振的倍数。

5,系统时钟

SYSCLK是系统时钟,由MSI,HSI和PLLCLK提供,是整个系统的核心,SYSCLK的频率直接影响整个系统的运行速度。

6,AHB系统总线

AHB高级高性能总线,这是一种“系统总线”。主要用于高性能模块(如CPU、DMA和DSP等)之间的连接。AHB系统由主模块、从模块和基础结构3部分组成,整个AHB总线上的传输都由主模块发出,由从模块负责回应。

7,HCLK主总线时钟

HCLK 是主总线时钟,由 SYSCLK 通过 AHB 分频器得到的,控制着主总线的时钟频率。HCLK驱动CPU核心、存储器(Flash和RAM)以及其他一些主总线上的外设。

8,FCLK自由运行时钟

FCLK是自由运行时钟,“自由”表现在它不来自系统时钟HCLK,在系统时钟停止时FCLK也继续运行。FCLK用作采样中断或者为调试模块计时。在处理器休眠时,通过FCLK可以采样到中断和跟踪休眠事件。Cortex-M内核的FCLK和HCLK互相同步、互相平衡,保证Cortex-M的延迟相同。    

9,Cortex system timer

Cortex system timer是Cortex的系统时钟,常用作滴答定时器。

10,APB1和APB2

APB1 peripheral clocks与APB1 timer clocks分别是APB1的外设时钟和APB1的定时器时钟,同理,APB2 peripheral clocks与APB1 timer clocks分别是APB2的外设时钟和APB2的定时器时钟。那么APB1和APB2是什么呢?我们可以在数据手册上看到下面的方框图,图中介绍了各种外设的关系。比如APB1掌管TIM2,TM3,I2C3等。

72b87bbb819e54c70d91e252785a527b.png    

11,外设时钟

灰色部分的是因为STM32CubeMX没有激活该功能,激活后就会变成这样:

d131c7adddcfa2c109346f8f02dfb6ca.png

这些都是常见的外设,时钟来源也已经标注出来了,比如I2C1的时钟来源有PCLK1,HSI和SYSCLK。如下图:

b25ebe4118f00a5b850966f54fe9368d.png    

==========

往期回顾:

【带你读懂数据手册】CN3702 一款锂电池充电芯片

有源晶振和无源晶振的区别

读取STM32芯片温度与当前供电电压

C语言求数组长度的5种方法

==========

1684f7c990c6f7a0bb42acf64a66d886.png

cc813c7aba2d3f69288ad35e11dce624.png

1eb2d17ead6002610c5881cdb774cd41.png

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

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

相关文章

8款优秀的MYSQL管理工具与应用程序推荐

文章目录 前言介绍InductionPinbaDB NinjaDB Tools ManagerDbeaverMyWebSQLNavicat后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:Mysql 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努…

DevEco Studio安装

HUAWEI DevEco Studio For OpenHarmony(以下简称DevEco Studio)是基于IntelliJ IDEA Community开源版本打造,面向OpenHarmony全场景多设备的一站式集成开发环境(IDE),为开发者提供工程模板创建、开发、编译…

Java面向对象(高级)-- 抽象类与抽象方法(或abstract关键字)

文章目录 一、抽象类的由来(1)举例1(2)举例2 二、案例引入(1)抽象类(2)抽象方法(3)补充1(4)补充2(5)举例1. 举…

incast,拥塞控制,内存墙的秘密

数据中心 incast,广域网拥塞,内存墙都是一类问题。 我接触 incast 很久了,大多是帮忙查问题,也解过几例。 我记得有一次在业务几乎总是(在统计学上,几乎和总是属同义强调) tail latency 很大时,我建议在 …

系列九、声明式事务(xml方式)

一、概述 声明式事务(declarative transaction management)是Spring提供的对程序事务管理的一种方式,Spring的声明式事务顾名思义就是采用声明的方式来处理事务。这里所说的声明,是指在配置文件中声明,用在Spring配置文件中声明式的处理事务来…

【Linux】匿名管道+进程池

文章目录 前置知识一、管道的原理二、管道的特性三、管道的接口四、使用管道实现简单的进程池解决进程池的一个小问题 前置知识 一个进程在创建时,会默认打开三个文件,分别是:stdin,stdout,stderr 进程中有一个维护进…

基于opencv+ImageAI+tensorflow的智能动漫人物识别系统——深度学习算法应用(含python、JS、模型源码)+数据集(三)

目录 前言总体设计系统整体结构图系统流程图 运行环境爬虫模型训练实际应用 模块实现1. 数据准备1)爬虫下载原始图片2)手动筛选图片 2. 数据处理1)切割得到人物脸部2)重新命名处理后的图片3)添加到数据集 3. 模型训练及…

深入解析Selenium动作链:精通点击、拖拽、切换等操作

背景: 一些交互动作都是针对某个节点执行的。比如,对于输入框,我们就调用它的输入文字和清空文字方法;对于按钮,就调用它的点击方法。其实,还有另外一些操作,它们没有特定的执行对象&#xff0…

JAVA创建线程方式有几种

方式1:继承Thread类 步骤: 创建一个继承于Thread类的子类重写Thread的run()方法创建当前Thread子类的对象通过实例对象调用start()方法,启动线程----》JAVA虚拟机会调用run()方法 实现: public class TestMyThread {public sta…

html实现各种瀑布流(附源码)

文章目录 1.设计来源1.1 动态响应瀑布流1.2 分页瀑布流1.3 响应瀑布流 2.效果和源码2.1 动态效果2.2 源代码 源码下载 作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/134613121 html实现各种瀑布流(附源码),…

pwn:[NISACTF 2022]ReorPwn?

题目 按正常方式走,发现指令被反着输出

十大排序之计数排序、桶排序、基数排序(详解)

文章目录 🐒个人主页🏅算法思维框架📖前言: 🎀计数排序 时间复杂度O(nk)🎇1. 算法步骤思想🎇2.动画实现🎇 3.代码实现 🎀桶排序🎇1. 算法步骤思想&#x1f38…