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 该驱动函数预览
| 序号 | 函数名 | 描述 |
|---|
| 1 | HAL_RCC_DeInit() | 反初始化时钟控制模块。 |
| 2 | HAL_RCC_OscConfig() | 配置时钟源。 |
| 3 | HAL_RCC_ClockConfig() | 配置系统时钟。 |
| 4 | HAL_RCC_MCOConfig() | 配置MCO(主时钟输出)。 |
| 5 | HAL_RCC_EnableCSS() | 启用CSS(时钟安全系统)。 |
| 6 | HAL_RCC_DisableCSS() | 禁用CSS(时钟安全系统)。 |
| 7 | HAL_RCC_GetSysClockFreq() | 获取系统时钟频率。 |
| 8 | HAL_RCC_GetHCLKFreq() | 获取HCLK(AHB总线时钟)频率。 |
| 9 | HAL_RCC_GetPCLK1Freq() | 获取PCLK1(APB1总线时钟)频率。 |
| 10 | HAL_RCC_GetPCLK2Freq() | 获取PCLK2(APB2总线时钟)频率。 |
| 11 | HAL_RCC_GetOscConfig() | 获取时钟源配置。 |
| 12 | HAL_RCC_GetClockConfig() | 获取时钟配置。 |
| 13 | HAL_RCC_NMI_IRQHandler() | NMI中断处理程序。 |
| 14 | HAL_RCC_CSSCallback() | CSS(时钟安全系统)中断回调函数。 |
以下是使用模板:
#include "stm32f4xx_hal.h"int main(void) {HAL_Init();HAL_RCC_DeInit();HAL_RCC_OscConfig();HAL_RCC_ClockConfig();HAL_RCC_GetSysClockFreq();HAL_RCC_GetHCLKFreq();HAL_RCC_GetPCLK1Freq();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总线时钟 |
| 输入参数 1 | RCC_ClkInitStruct:时钟配置参数 |
| 输入参数 2 | FLatency: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) |
| 输入参数 1 | RCC_MCOx:MCO输出端口编号 |
| 输入参数 2 | RCC_MCOSource:MCO时钟源 |
| 输入参数 3 | RCC_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) |
| 功能描述 | 获取时钟树的配置参数 |
| 输入参数 1 | RCC_ClkInitStruct:时钟树配置参数 |
| 输入参数 2 | pFLatency: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日 | 第一次发布,介绍了该博客驱动所有函数的介绍及使用 |
总结
以上就是该博客驱动所有函数的介绍及使用的内容。
有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
创作不容,如果文档对您有帮助,记得给个赞。