STM32的系统时钟与SystemInit函数

《STM32 HAL库》RCC 相关系列函数详尽解析—— HAL_RCC_OscConfig() 此函数是一个用于初始化RCC(Reset and Clock Control)振荡器(Oscillators,函数名中Osc为此单词缩写)的函数。它接受一个指向RCC_OscInitTypeDef结构体的指针,结构体的各成员分别包含了RCC振荡器的配置信息。HSE配置,外部高速时钟HSI配置,内部高速时钟LSE配置,外部低速时钟LSI配置,内部低速时钟PLL1配置,锁相环1PLL2配置,锁相环2下文中我们将以功能为线索依次分析此函数。 阅读详情

以上在stm32f4xx中文参考手册的截图

SYSCLK时钟的来源有3个分别是 HSI  HSE PLL

我们主要的时钟有 低速的内部时钟  LSI   RC震荡产生 32KHZ

                               低速的外部时钟 LSE  32.768KHZ晶振

                              高速的内部时钟  HSI  RC震荡16MHZ

                               高速的外部时钟 HSE  一般为8Mhz

一般情况我们的SYSCLK时钟选择PLLCLK

看看我们的函数是怎么操作时钟分配的!

 

启动文件首先先配置时钟然后在运行用户主函数,打开SystemInit函数

 

STM32HAL库1:认识时钟树(STM32F407) 1.认识时钟树 1.1什么时钟 1.2认识时钟树 2.配置系统时钟 2.1系统适中的配置过程 2.2外设时钟使能和失能 2.3sys_stm32_clock_init函数(F4) 2.4SystemClock_Config函数(F407) 阅读详情

相关推荐

STM32HAL库(二):时钟树案例详解

STM32时钟树案例详解 时钟树 直接使用HSI作为时钟源 使用配置相应的结构体,最后调用HAL_RCC_OscConfig(), 和HAL_RCC_ClockConfig()初始化时钟。 /** * @brief System Clock Configuration * @retval None * 方式一:直接配置相应的结构体 * 使用HSI作为系统时钟源(16MHz). */ void SystemClock_Config(void) { RCC_OscInitTypeDe

倔强的大猪猪的博客 1854

【STM32】SystemInit时钟系统初始化函数剖析

本文介绍了STM32微控制器的时钟系统,重点解析了五种主时钟源(HSI、HSE、LSI、LSE、PLL)的特性及应用场景。文章详细说明了系统时钟初始化流程,包括SystemInit函数的作用、时钟配置寄存器解析,以及PLL倍频原理。针对关键问题"为何使用外设前需初始化时钟",文中指出所有外设必须使能时钟才能正常工作,并提供了GPIO和定时器的时钟使能示例。最后给出了完整的时钟配置推荐流程,涵盖时钟源选择、PLL设置、Flash延迟配置等关键步骤,为STM32开发者提供了实用的时钟系统参考指南。

猫猫的小茶馆 1635

[8]STM32 SystemInit时钟系统初始化函数

前言 参考资料 《STM32开发指南-库函数版本》4.3小姐 《STM32中文参考手册V10》-第六章

爪爪x的博客 974

STM32工作笔记045---SystemInit时钟系统初始化函数剖析

技术交流QQ群【JAVA,C++,Python,.NET,BigData,AI】:170933152 systeminit这个函数对,时钟系统有配置,是通过配置寄存器实现的. 需要看上一讲之后再看这一讲 复习一下. 这里CR寄存器,CFGR寄存器,AHBENR寄存器,APB2ENR寄存器,APB1ENR寄存器,对应的寄存器 用法可以在上讲或者文档中找到. 然后打开,之前的跑马灯实验,库函数版,来看一下代码 找到系统初始化函数 看之前先要准备,时钟框图和

添柴程序猿的专栏 700

从零到一:鲲鹏920服务器上的DeepSeek模型部署全流程解析

本文详细解析了在华为鲲鹏920服务器上部署DeepSeek模型的全流程,包括环境准备、模型服务框架部署、性能优化及生产环境方案。通过ARM架构优化和量化技术,显著提升模型推理效率,适用于企业级AI应用场景,助力国产化技术落地。

weixin_29094775的博客 590

Camera metadata

Camera metadata

weixin_42136255的博客 2521

DLL导出函数名隐藏实战:三种方法保护代码安全

在Windows软件开发中,动态链接库(DLL)的导出函数名是模块间通信的关键标识,也是逆向工程的重要突破口。理解PE文件格式中的导出表结构是掌握DLL工作原理的基础,它记录了函数地址、名称和序号的映射关系。通过隐藏或混淆这些导出名称,可以有效增加代码分析的难度,提升软件的知识产权保护和安全性。这一技术在软件保护、游戏反作弊和安全组件中具有重要价值。本文聚焦DLL导出函数名隐藏,结合Dependencies工具分析,详细解析仅序号导出、导出转发器和运行时动态修改三种实用方案,为开发者提供从原理到实践的完整指

weixin_29315091的博客 302

Linux Wireless之80211(nl80211, cfg80211, mac80211)

Linux Wireless之80211(nl80211, cfg80211, mac80211)前言在Linux无线子系统中,cfg80211、mac80211和nl80211是三个关键的组件,它们共同工作以实现对802.11设备的配置和管理。cfg80211负责内核空间的通用API,mac80211负责具体的MAC层实现,而nl80211则作为用户空间与内核空间之间的桥梁,用于配置管理和通信。Netlink 是一个 Linux 中的 socket 类型,用于在内核与用户空间之间传递事件。

DD'Notes 1474

RK3588嵌入式开发:从零构建Rockit多媒体处理引擎的实战指南

本文详细介绍了如何在RK3588嵌入式平台上从零构建Rockit多媒体处理引擎的实战指南。涵盖开发环境搭建、工具链配置、源码编译流程、硬件加速优化及典型问题解决方案,帮助开发者高效利用RK3588的NPU和VPU加速特性,实现高性能多媒体处理应用。

mango的博客 182

MATLAB算法实战应用案例精讲-【数模应用】装箱问题

装箱问题可以根据不同的维度进行分类。以下是一些常见的装箱问题二维装箱问题:二维装箱问题假设所有物品都是平面上的矩形,并且需要将它们放入平面上的容器中。这个问题的目标是找到一种装箱方案,使得物品不重叠并占据的总面积最小。三维装箱问题:三维装箱问题考虑到物品可以具有高度,并且需要将它们放入三维容器(如箱子或货柜)中。目标是找到一种装箱方案,使得物品不重叠且总体积最小。多维装箱问题:多维装箱问题是指在更高维度空间中进行装箱的问题。除了长度和宽度之外,物品可能具有其他属性,如高度、重量、形状等。

qq_36130719的博客 1566

分布式计算Ray框架面试题及参考答案

动态任务图执行引擎是一种能够根据任务之间的依赖关系和运行时的实际情况,动态构建和执行任务图的系统。在 Ray 中,动态任务图执行引擎允许任务在运行时根据数据可用性、计算资源状态等因素,灵活地决定后续任务的执行顺序和方式。对于 AI 应用来说,其往往具有动态性的特点。例如,在深度学习模型的训练过程中,可能需要根据训练的结果动态调整下一轮训练的参数、数据增强方式或者模型结构。动态任务图执行引擎可以很好地支持这些动态需求。它能够根据 AI 应用中各个任务的实时输出和依赖关系,动态地生成和调整任务图。

大模型大数据攻城狮的专栏 1341

FH8626V100之开发环境搭建

FH8626V100是富瀚微出的一款带摄像头的方案,开发工具在Linux 上进行。版本 Ubuntu 20.04 64位。

xue_nuo的博客 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

下一篇: SetSysClock()
windyxin872
博客等级 码龄11年 0粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值