A39 STM32_HAL库函数 之 Rcc通用驱动 所有函数的介绍及使用

A39 STM32_HAL库函数 之 Rcc通用驱动 所有函数的介绍及使用

  • 1 该驱动函数预览
    • 1.1 HAL_RCC_DeInit
    • 1.2 HAL_RCC_OscConfig
    • 1.3 HAL_RCC_ClockConfig
    • 1.4 HAL_RCC_MCOConfig
    • 1.5 HAL_RCC_EnableCSS
    • 1.6 HAL_RCC_DisableCSS
    • 1.7 HAL_RCC_GetSysClockFreq
    • 1.8 HAL_RCC_GetHCLKFreq
    • 1.9 HAL_RCC_GetPCLK1Freq
    • 1.10 HAL_RCC_GetPCLK2Freq
    • 1.11 HAL_RCC_GetOscConfig
    • 1.12 HAL_RCC_GetClockConfig
    • 1.13 HAL_RCC_NMI_IRQHandler
    • 1.14 HAL_RCC_CSSCallback
  • 该文档修改记录:
  • 总结

1 该驱动函数预览

序号函数名描述
1HAL_RCC_DeInit()反初始化时钟控制模块。
2HAL_RCC_OscConfig()配置时钟源。
3HAL_RCC_ClockConfig()配置系统时钟。
4HAL_RCC_MCOConfig()配置MCO(主时钟输出)。
5HAL_RCC_EnableCSS()启用CSS(时钟安全系统)。
6HAL_RCC_DisableCSS()禁用CSS(时钟安全系统)。
7HAL_RCC_GetSysClockFreq()获取系统时钟频率。
8HAL_RCC_GetHCLKFreq()获取HCLK(AHB总线时钟)频率。
9HAL_RCC_GetPCLK1Freq()获取PCLK1(APB1总线时钟)频率。
10HAL_RCC_GetPCLK2Freq()获取PCLK2(APB2总线时钟)频率。
11HAL_RCC_GetOscConfig()获取时钟源配置。
12HAL_RCC_GetClockConfig()获取时钟配置。
13HAL_RCC_NMI_IRQHandler()NMI中断处理程序。
14HAL_RCC_CSSCallback()CSS(时钟安全系统)中断回调函数。

以下是使用模板:

#include "stm32f4xx_hal.h"

int main(void) {
    // HAL初始化
    HAL_Init();
    
    // 反初始化时钟控制模块
    HAL_RCC_DeInit();
    
    // 配置时钟源
    HAL_RCC_OscConfig();
    
    // 配置系统时钟
    HAL_RCC_ClockConfig();
    
    // 获取系统时钟频率
    HAL_RCC_GetSysClockFreq();
    
    // 获取HCLK(AHB总线时钟)频率
    HAL_RCC_GetHCLKFreq();
    
    // 获取PCLK1(APB1总线时钟)频率
    HAL_RCC_GetPCLK1Freq();
    
    // 获取PCLK2(APB2总线时钟)频率
    HAL_RCC_GetPCLK2Freq();
    
    return 0;
}

1.1 HAL_RCC_DeInit

函数名HAL_RCC_DeInit
函数原形void HAL_RCC_DeInit(void)
功能描述复位RCC设置
输入参数
输出参数
返回值
先决条件
被调用函数

1.2 HAL_RCC_OscConfig

函数名HAL_RCC_OscConfig
函数原形HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
功能描述配置时钟振荡器
输入参数RCC_OscInitStruct:时钟振荡器配置参数
输出参数
返回值HAL_StatusTypeDef:函数执行状态
先决条件
被调用函数

1.3 HAL_RCC_ClockConfig

函数名HAL_RCC_ClockConfig
函数原形HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
功能描述配置系统时钟、AHB、APB1和APB2总线时钟
输入参数 1RCC_ClkInitStruct:时钟配置参数
输入参数 2FLatency:Flash延迟配置参数
输出参数
返回值HAL_StatusTypeDef:函数执行状态
先决条件
被调用函数

1.4 HAL_RCC_MCOConfig

函数名HAL_RCC_MCOConfig
函数原形void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv)
功能描述配置主时钟输出(MCO)
输入参数 1RCC_MCOx:MCO输出端口编号
输入参数 2RCC_MCOSource:MCO时钟源
输入参数 3RCC_MCODiv:MCO分频器
输出参数
返回值
先决条件
被调用函数

1.5 HAL_RCC_EnableCSS

函数名HAL_RCC_EnableCSS
函数原形void HAL_RCC_EnableCSS(void)
功能描述启用CSS(Clock Security System)
输入参数
输出参数
返回值
先决条件
被调用函数

1.6 HAL_RCC_DisableCSS

函数名HAL_RCC_DisableCSS
函数原形void HAL_RCC_DisableCSS(void)
功能描述禁用CSS(Clock Security System)
输入参数
输出参数
返回值
先决条件
被调用函数

1.7 HAL_RCC_GetSysClockFreq

函数名HAL_RCC_GetSysClockFreq
函数原形uint32_t HAL_RCC_GetSysClockFreq(void)
功能描述获取系统时钟频率
输入参数
输出参数
返回值系统时钟频率
先决条件
被调用函数

1.8 HAL_RCC_GetHCLKFreq

函数名HAL_RCC_GetHCLKFreq
函数原形uint32_t HAL_RCC_GetHCLKFreq(void)
功能描述获取HCLK时钟频率
输入参数
输出参数
返回值HCLK时钟频率
先决条件
被调用函数

1.9 HAL_RCC_GetPCLK1Freq

函数名HAL_RCC_GetPCLK1Freq
函数原形uint32_t HAL_RCC_GetPCLK1Freq(void)
功能描述获取PCLK1时钟频率
输入参数
输出参数
返回值PCLK1时钟频率
先决条件
被调用函数

1.10 HAL_RCC_GetPCLK2Freq

函数名HAL_RCC_GetPCLK2Freq
函数原形uint32_t HAL_RCC_GetPCLK2Freq(void)
功能描述获取PCLK2时钟频率
输入参数
输出参数
返回值PCLK2时钟频率
先决条件
被调用函数

1.11 HAL_RCC_GetOscConfig

函数名HAL_RCC_GetOscConfig
函数原形void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
功能描述获取时钟振荡器的配置参数
输入参数RCC_OscInitStruct:时钟振荡器配置参数
输出参数
返回值
先决条件
被调用函数

1.12 HAL_RCC_GetClockConfig

函数名HAL_RCC_GetClockConfig
函数原形void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency)
功能描述获取时钟树的配置参数
输入参数 1RCC_ClkInitStruct:时钟树配置参数
输入参数 2pFLatency:Flash延迟配置参数
输出参数
返回值
先决条件
被调用函数

1.13 HAL_RCC_NMI_IRQHandler

函数名HAL_RCC_NMI_IRQHandler
函数原形void HAL_RCC_NMI_IRQHandler(void)
功能描述NMI中断服务程序
输入参数
输出参数
返回值
先决条件
被调用函数

1.14 HAL_RCC_CSSCallback

函数名HAL_RCC_CSSCallback
函数原形void HAL_RCC_CSSCallback(void)
功能描述CSS(Clock Security System)中断回调函数
输入参数
输出参数
返回值
先决条件
被调用函数

该文档修改记录:

修改时间修改说明
2024年4月30日第一次发布,介绍了该博客驱动所有函数的介绍及使用

总结

以上就是该博客驱动所有函数的介绍及使用的内容。
有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
创作不容,如果文档对您有帮助,记得给个赞。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ZDOCK linux 下载(无需安装)、配置、使用

ZDOCK 下载 使用 1. 下载1)教育邮箱提交申请,会收到下载密码2)选择相应的版本3)解压 2. 使用方法Step 1:将pdb文件处理为ZDOCK可接受格式Step 2:DockingStep 3:创建所有预测结构 1. 下载 1&…

【matlab】reshape函数介绍及应用

【matlab】reshape函数介绍及应用 【先赞后看养成习惯】求点赞关注收藏😀 在MATLAB中,reshape函数是一种非常重要的数组操作函数,它可以改变数组的形状而不改变其数据。本文将详细介绍reshape函数的使用方法和应用。 1. reshape函数的基本语…

个人博客系统的设计与实现

https://download.csdn.net/download/liuhaikang/89222885http://点击下载源码和论文 本 科 毕 业 设 计(论文) 题 目:个人博客系统的设计与实现 专题题目: 本 科 毕 业 设 计(论文)任 务 书 题 …

2.6设计模式——Flyweight 享元模式(结构型)

意图 运用共享技术有效地支持大量细粒度的对象。 结构 其中 Flyweight描述一个接口,通过这个接口Flyweight可以接受并作用于外部状态。ConcreteFlyweight实现Flyweight接口,并作为内部状态(如果有)增加存储空间。ConcreteFlywe…

快速入门基础控制台API

目录 一、什么是win32API 二、API基础函数介绍 2.1控制台基础命令 2.1.1标题修改 2.1.2长宽修改 2.1.3坐标 2.2GetStdHandle 2.3GetConsoleCursorInfo 2.4SetConsoleCursorInfo 2.5SetConsoleCursorPosition 2.6GetAsyncKeyState 三、API函数综合应用 3.1设置光标…

Facebook的魅力魔法:探访数字社交的奇妙世界

1. 社交媒体的演变与Facebook的角色 在数字化时代,社交媒体已经成为我们日常生活中不可或缺的一部分。而在众多的社交媒体平台中,Facebook 以其深厚的历史和广泛的影响力,成为了全球数亿用户沟通、分享和互动的主要场所。从其初创之时起&…

雅特力AT32F435学习——3.PWM实验

PWM实验 定时器浑身都是包其中PWM占大头,因为PWM应用太广了:呼吸灯、电机、蜂鸣器,生日火炬里的声音都是PWM干的,接下来就让我们学一下雅特力AT32F435单片机的PWM吧。 基础知识 老样子对于PWM的基础了解那肯定直接从数据手册学…

动手学深度学习14 数值稳定性+模型初始化和激活函数

动手学深度学习14 数值稳定性模型初始化和激活函数 1. 数值稳定性2. 模型初始化和激活函数3. QA **视频:**https://www.bilibili.com/video/BV1u64y1i75a/?spm_id_fromautoNext&vd_sourceeb04c9a33e87ceba9c9a2e5f09752ef8 **电子书:**https://zh-v…

azure云服务器学生认证优惠100刀续订永久必过方法记录

前面的话 前几天在隔壁网站搞了个美国edu邮箱,可以自定义用户名。今天就直接认证Azure,本来打算等GitHub学生包过期后用这个edu邮箱重新认证白嫖Azure的。在昨天无意中看到续期,就把原本那个Azure账号续了一年,所以这个美国edu邮…

25计算机考研院校数据分析 | 浙江大学

浙江大学(Zhejiang University),简称“浙大”,坐落于“人间天堂”杭州。前身是1897年创建的求是书院,是中国人自己最早创办的新式高等学校之一。 浙江大学由教育部直属、中央直管(副部级建制)&a…

一文掌握Vue3:深度解读Vue3新特性、Vue2与Vue3核心差异以及Vue2到Vue3转型迭代迁移重点梳理与实战

每次技术革新均推动着应用性能与开发体验的提升。Vue3 的迭代进步体现在性能优化、API重构与增强型TypeScript支持等方面,从而实现更高效开发、更优运行表现,促使升级成为保持竞争力与跟进现代前端趋势的必然选择。本文深度解读Vue3 响应式数据data、生命…

常用的JDK9-JDK17的一些新增语法特性

目录 1.前言2.一些新增的特性2.1 yield关键字2.2 var关键字2.3 空指针异常2.4 密封类2.5 接口中的私有方法2.6 instanceof2.7 其他 1.前言 从springboot3.0开始,已经不⽀持JDK8了。参考资料 :Spring官方博客。从3.0开始,转变为JDK17。 官方…

使用windows端MySQL创建数据库

1.命令行登录数据库 命令:mysql -u用户名 -p密码; 切记命令后面要以分号结尾 2. 查看和创建数据库 查看数据库命令:show database; 创建数据库命令:mysql> create database db_classes; 创建一个名为db_classes的…

【漏洞复现】WebLogic XMLDecoder反序列化(CVE-2017-10271)

1、漏洞描述 CVE-2017-10271漏洞产生的原因大致是Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。攻击者发送精心构造的xml数据甚至能…

AIGC算法3:Attention及其变体

1.Attention Attention是Transformer的核心部分,Attention机制帮助模型进行信息筛选,通过Q,K,V,对信息进行加工 1.1 attention计算公式 Attention ⁡ ( Q , K , V ) softmax ⁡ ( Q K T d k ) V \operatorname{Attention}(Q, K…

找不到mfc140.dll如何解决?mfc140.dll丢失的几种解决方法分享

在我们启动并开始利用电脑进行日常工作的过程中,如果遭遇了操作系统提示“mfc140.dll文件丢失”的错误信息,导致某些应用程序无法正常运行,这究竟是何种情况呢?小编将介绍计算机缺失mfc140.dll文件的5种解决方法,帮助大…

二叉树数据结构详解及java使用二叉树示例代码

二叉树详解: 二叉树是一种常见的树形数据结构,它由节点组成,每个节点最多有两个子节点,分别称为左子节点和右子节点。 二叉树组成: 节点(Node): 每个节点包含三个要素:数…

【AI学习】RAG与推荐系统

一、《双塔模型的瓶颈究竟在哪?》 文章介绍了谷歌的一篇论文,《Large Dual Encoders Are Generalizable Retrievers》 文章主要在讲,稠密检索模型在OOD(Out-Of-Distribution,即域外)泛化能力不行&#xff…

【Pytorch】(十五)模型部署:ONNX和ONNX Runtime

文章目录 (十五)模型部署:ONNX和ONNX RuntimeONNX 和 ONNX Runtime的关系将PyTorch模型导出为ONNX格式使用Netron可视化ONNX模型图检查ONNX模型验证ONNX Runtime推理结果使用ONNX Runtime运行超分模型 (十五)模型部署&…

外贸干货|真正的销售高手,都很会提问

你的产品性价比很高,为什么客户没有买单呢? 最重要的原因是你没有了解到他真正的需求。 真正的销售高手,应该是一个提问高手,至少要连续问对方6个问题,问出客户的真实需求。 假如他回答你的问题,你有一种&a…
最新文章