STM32F4XX时钟树

深入解析STM32F4xx时钟配置:从寄存器到HAL驱动的实战对比 本文深入解析了STM32F4xx微控制器的时钟配置,通过生动的时钟树比喻,系统对比了寄存器直接操作、LL库和HAL库三种配置方法的实战应用与优劣。文章详细阐述了从底层寄存器控制到高级HAL驱动的完整流程,并提供了168MHz主频配置的代码示例,旨在帮助开发者根据项目需求在极致性能、开发效率与可维护性之间做出最佳选择。 阅读详情

时钟是单片机的“小心脏”,及其的重要,也极其的复杂,我们必须对他有一定的了解。

Let’go!

1时钟树的框图(STM32F4XX中文参考手册)
在这里插入图片描述

一、STM32有5个时钟源 :HSI、HSE、PLL、LSI、LSE
	1.HSI(high speed interior)高速内部时钟,RC振荡器,频率为16MHZ,精度不高。可以直接作为系统时钟或者PLL时钟的输入。
	2.HSE(high speed exterior)高速外部时钟,可接石英、陶瓷振荡器,或者接外部时钟源,频率范围为4MHZ~26MHZ。
	3.PLL(phase loked loop)为锁相环倍频输出。STM32F4有两个PLL:
		(1)主PLL由HSE和HSI提供时钟信号,并具有两个不同的输出时钟
			1.第一个输出PLLP用于生成高速系统时钟(最高168MHZ)
			2.第二个输出PLLQ用于生成USB OTG FS 的时钟(48MHZ),随机数发生器		的时钟和SDIO时钟。
		(2)专用的PLL(PLLI2S)用于生成精确时钟,从而在I2S接口实现高品质音频性能。
	4.LSE(low speed exterior)是低速外部时钟,接频率为32.768kHZ的石英晶体。一般为RTC提供时钟。
	5.LSI(low speed interior)是低速内部时钟,RC振荡器,频率为32kHZ,不精确,提供低功耗时钟。主要供独立看门狗和自动唤醒单元使用。

二、系统时钟SYSCLK可来源于三个时钟源:
	1、HSI振荡器时钟
	2、HSE振荡器时钟
	3、PLL时钟

三、STM32F4时钟信号输出MCO1(PA8)和MCO2(PC9):
1、MCO1:用户可以配置预分频器(1~5)向MCO1引脚PA8输出四个不同的时钟源:
	(1)HSI
	(2)LSE
	(3)HSE
	(4)PLL
2、MCO1:用户可以配置预分频器(1~5)向MCO1引脚PA8输出四个不同的时钟源:
	(1)HSE
	(2)PLL
	(3)SYSCLK
	(4)PLLI2S

注意:MCO最大输出时钟不超过100MHZ

四、在任何一个外设使用之前,必须首先使能其相应的时钟

2系统时钟的配置
在这里插入图片描述

	通过1~5的配置即可配置系统时钟,具体计算如图所示。
	具体操作要配置相应的寄存器或者库函数。
	外设的时钟配置可以直接倍频或者分频系统时钟。
STM32F407串口乱码终极解决方案:正点原子与野火开发版时钟配置差异详解 本文深入解析STM32F407开发板在正点原子与野火平台上的串口乱码问题,揭示时钟配置差异是根本原因。通过对比PLL参数和提供两种解决方案(替换库文件与手动修改),帮助开发者快速定位并解决串口通信问题,确保代码在不同硬件平台上的兼容性。 阅读详情

相关推荐

机械陀螺仪(ADS8327, STM32F405RGT6)的研究总结报告(连载)

第一次把自己的报告总结起来,也是觉得这方面的东西,网上资料太少了,不是很齐,所以放在这里便于一些可能遇到同样问题的“小萌新”see see

weixin_38035675的博客 1854

MySQL5.7压缩包安装图文教程

MySQL5.7压缩包安装图文教程 添加链接描述 下载idea http://www.zdfans.com/html/16895.html 撤销:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Command + B 斜体:Ctrl/Command + I 标题:Ctrl/Command + Shift + H 无序列表:Ctrl/Command + Sh...

weixin_37343255的博客 364

STM32F407库函数工程模板构建指南

嵌入式开发中,工程模板是连接代码与硬件的标准化契约,其本质是对芯片启动流程、外设抽象层(SPL)和CMSIS标准的结构化封装。基于STM32F407的库函数(Standard Peripheral Library)模板,通过精确裁剪固件库、分层组织User/Libraries/OBJ目录、配置Keil MDK的头文件路径与宏定义,实现最小可行系统(MVP)的快速构建。该方案兼顾资源效率与可维护性,在电机驱动、工业控制等实时性敏感场景中仍具显著优势;同时支持向HAL库平滑演进,为FreeRTOS、LwIP等高

weixin_30838971的博客 684

STM32F4xx开发学习_RCC时钟树配置

STM32F4xx时钟树相关知识

dabuding666的博客 1260

STM32F4xx中英文参考手册双语完整版

STM32F4xx的强大,从来不是单一指标的堆砌,而是内核、内存、总线、电源、外设五大系统的精密协同。只有当你真正理解了它的每一个齿轮是如何咬合运转的,才能写出既高效又可靠的代码。无论是工业控制中的毫秒级响应,还是电池供电设备的微安级待机,背后都是对这些底层机制的深刻把握。所以,下次你在写的时候,不妨想想:这一秒钟里,CPU、Flash、总线、电源模块各自经历了什么?😉掌握它们,你就不再是“调库侠”,而是真正的嵌入式掌控者。🚀本文还有配套的精品资源,点击获取。

weixin_42594419的博客 852

STM32F411CEu6系统时钟寄存器配置

STM32F411CEu6的系统时钟倍频配置 25M外部晶振 嘀嗒延时

STM32F40X之时钟树

STM32F40X之时钟树

weixin_52483742的博客 572

棋牌App逆向工程实战:透视风险分析与反作弊加固思路

在移动应用安全领域,逆向工程是一项关键的攻防技术,它通过静态分析、动态调试与协议抓包等手段,深入还原客户端真实逻辑。这项技术的核心原理,是从已编译的安装包中提取数据流,验证服务端下发的信息是否超出了客户端应有的可见范围。从技术价值看,安全测试人员可以借此定位协议层、内存层与缓存层的潜在风险,为反作弊体系提供精准的加固建议。在棋牌类App等实时对局场景中,逆向工程常被用于排查牌局信息泄露类隐患,而合规授权与测试环境是开展此类研究的必要前提。本文结合一次棋牌App的安全评估实践,梳理了从环境准备到数据流还原的完

weixin_29326909的博客 174

STM32F4xx的时钟树

STM32F4xx的时钟树。 注意点 1:STMF4xx系统共计有三个主要时钟源(HSI、HSE和PLL)和两个次要时钟源(LSE、LSI)。 2:SYSCLK可以来自HSI、HSE和PLL,多数采用PLL频率最高能达到168MHz。 3:RTC时钟可以来自LSE、LSI和HSE,但只有用LSE时,才能保证系统电源掉电时RTC仍能正常工作。 4:可通过多个预分频器配置 AHB 频率、...

4670

OpenEuler内核编译及替换

一、内核源码下载 在gitee上下载OpenEuler内核源码 下载地址 选择需要的内核版本源码压缩包进行下载 二、内核编译 1.解压缩 将下载好的源码进行解压 tar xvf openeuler-kernel-4.19.90-2107.1.0.tar.gz 2.清理源代码树 解压后得到一个名为kernel的内核源码文件夹,进入后执行命令 make mrproper 清理过去内核编译产生的config,第一次编译时可不执行此命令 3.生成内核配置文件.config 先将将系统原配置文件拷贝过来,原

m0_56602092的博客 2万+

RK3588上从零部署Facenet人脸识别:PyTorch转ONNX再到RKNN的完整避坑指南

本文提供了在RK3588开发板上从零部署Facenet人脸识别模型的完整指南。详细介绍了从PyTorch模型导出、转换为ONNX格式,再通过RKNN-Toolkit2转换为RKNN格式的完整流程,并重点分享了环境配置、算子兼容性处理、量化调优及板端部署中的关键步骤与避坑经验。

river的博客 463

【笔记】STM32F4xx 时钟定时器

SysTick 系统定时器,作为整个系统的基本的时间单元。所有Cortex M3/M4中都会内置于NVIC一个SysTick的定时器。这个定时器只有一个时基单元。并且在溢出时,会产生一个SysTick异常(中断)。它被内置于NVIC中,它能够产生一个SysTick异常(异常类型 #15).这个SysTick定时器是一个简单的24bits的递减定时器,它可以运行在处理器的时钟频率上,也可以运行在一个外部的时钟频率上(通常在片上的时钟源)SysTick控制及状态寄存器(地址:0xE000_E010)

TOOY_1011B的博客 2413

【Claude Code 源码解析教程】第4章:QueryEngine 查询引擎

本章深入解析 Claude Code 的核心引擎——QueryEngine,它是整个对话系统的"心脏",负责管理会话状态、消息处理流程和多轮对话支持。

rengang66的博客 269

STM32F4学习资源及方法

一、参考书:《STM32F4xx中文参考手册》、《STM32F3与F4系列CortexM4内核编程手册》、《Cortex M3与M4权威指南》。 1.《STM32F4xx中文参考手册》是ST官方资料,包含了STM32F4各种寄存器及功能详细介绍。 2.《STM32F3与F4系列CortexM4内核编程手册》是对《STM32F4xx中文参考手册》的补充,很多关于CortexM4内核的介绍都可以在...

baidu_37973494的博客 4230

2025_NIPS_Grounded Reinforcement Learning for Visual Reasoning

尽管基于思维链的强化学习已在数学、编程等任务中显著提升语言模型性能,但视觉推理面临额外复杂性——需模型引导视觉注意力、解读感知输入,并将抽象推理锚定到空间证据上。本文提出ViGoRL(视觉接地强化学习),这是一种通过强化学习训练的视觉语言模型,能将每个推理步骤明确锚定到特定视觉坐标。受人类视觉决策启发,ViGoRL学会生成空间接地的推理轨迹,在每个步骤引导视觉注意力聚焦任务相关区域。当需要细粒度探索时,我们提出的多轮强化学习框架允许模型随着推理展开动态缩放至预测坐标。

c_cpp_csharp的专栏 58

OceanBase迁移平台OMS企业版部署

OceanBase迁移平台OMS企业版部署摘要: 本文档详细介绍了OceanBase迁移平台OMS企业版的部署流程,包含环境准备、OAT部署管理、MetaDB部署等关键步骤。

Sebastien23的博客 520

01STM32F407自学日记----时钟

可以注意到ABP2总线时钟频率是ABP1总线的两倍,定时器时钟是外设的两倍。在stm32F4XX参考手册:存储器和总线架构->存储器映射 中 可以查询外设和时钟挂载的总线。绝大多数情况我们都使用芯片最大频率, 所以将HCLK(MHz)输入最大值168回车即可自动设置时钟树,此处仅需学会使用即可。首先要知道时钟树,如图来自STM32407ZET6的CubeMX中的时钟树配置。重点关注图中标注的方框中的四个部分。

W1498614624的博客 305

芒果YOLO11改进81:主干Backbone篇之DCNv3结构:即插即用|使用pytorch代码实现,并针对YOLO11专门优化模块

芒果YOLO11改进81:主干Backbone篇之DCNv3结构:即插即用|使用pytorch代码实现,并针对YOLO11专门优化模块

包括YOLOv5、YOLOv7、YOLOv8等模型改进 736

STM32 时钟树配置(debug)

参考配置 system_stm32f4xx.c(只要你的单片机是 STM32F40XX/41XX,外部高速晶振频率为 8MHZ,使用标准库,就可以直接用这个配置):查看原理图中晶振频率,修改 system_stm32f4xx.c 参数,建议借助 stm32cubemx 的时钟树进行计算,手算容易出错,而且会遗漏配置项。阅读 system_stm32f4xx.c 文件和原理图,发现配置和原理图不匹配。:用 ozone 发现时钟频率异常,可能是时钟树配置错误。

2303_78834656的博客 755

一篇文章认识《双目立体视觉》

双目立体视觉,由两个摄像头组成,像人的眼睛能看到三维的物体,具有深度的信息;单目视觉只能看到二维的物体。 1)双目摄像头 2)双目相机基线 3)打开双目摄像头 4)双目测距 视差disparity、 极线约束、 极线校正/立体校正、 a.双目标定 b.双目矫正 c.立体匹配 d.双目测距(三角测量) e.测距效果 立体视觉方法评测网站

黎国溥 7958

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

stm32F4系统时钟配置--标准固件库

stm32系统时钟设置

zuoxi4621的博客 2306

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

2020-08-23

STM32F407开发板学习 1. 首先要学会用百度,还有相关的兴趣交流网站,如电子开源网www.openedv.com以及ST官方网站www.stmcu.org,里面有丰富的资料,可以进行学习。 2.资料有了,学习资源有了,剩下的是如何学习? 2.1 确定学习目的,相当一部分人学习它是为了走嵌入式路线,因此长远目标确定了,学习的大方向就不会走偏了,毕竟嵌入式学习学的很多很杂*,不要畏难,需要一开始就*要制定一个大的战略。 2.2 知己知彼,百战不殆”,要学习它,攻克它,就要跟它有密切的接触,因此要买

qq_41705854的博客 215

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

stm32—时钟、定时器和看门狗

毛刺”时期是不正常的,我们应该要略过它,略过的意思是指当B的信号发生改变时我们不应该立马去读输出值,而是应该等待一段时间,等电路(如:&门)将数据处理完毕后,再去读取输出值此时才是准确的。为什么会有这样的现象呢?输入信号经过"输入捕获阶段"(数字滤波,多路复用,预分频,去噪等等)到信号检测,当检测到需要的信号状态(上升沿变化 / 下降沿变化)变化时,就会把定时器时基单元中的TIMx_CNT 计数器值,锁定到"输入捕获寄存器"中。用来将定时器的总线时钟进行分频,提供一个合适的频率,给计数器去计数。

sc020826的博客 1460

STM32F407时钟树与系统时钟学习笔记

STM32F4xx时钟树 STM32F407时钟树 1、 时钟树简介 从图中可以看出STM32有四个时钟源和锁相环倍频输出时钟:分别是: 1、HSE:高速外部时钟 高速外部时钟信号 (HSE) 有 2 个时钟源:(1) HSE 外部晶振/陶瓷谐振器、(2)HSE 外部用户时钟 2、HSI:高速内部时钟 HSI 时钟信号由内部 16 MHz RC 振荡器生成,可直接用作系统时钟,或者用作 PLL 输入。 3、LSE:低速外部时钟 LSE 晶振是 32.768 kHz 低速外部 (LSE) 晶振或陶瓷谐振器,可

八音盒笔记 7393

转:STM32时钟系统(时钟树、时钟源、分频器和倍频系数、锁相环、STM32CubeMX时钟树、系统时钟配置步骤)_stm32时钟配置流程

【正点原子STM32】STM32时钟系统(时钟树、时钟源、分频器和倍频系数、锁相环、STM32CubeMX时钟树、系统时钟配置步骤)_stm32时钟配置流程-优快云博客

weixin_39926429的博客 376
上一篇: 第十一届蓝桥杯单片机决赛总结
下一篇: STM32F4XX芯片的架构初了解
芯芯泡饭
博客等级 码龄7年 48粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值