STM32使用HSE配置系统时钟

编程入门 行业动态 更新时间:2024-10-27 12:32:32

STM32使用HSE配置系统<a href=https://www.elefans.com/category/jswz/34/1769919.html style=时钟"/>

STM32使用HSE配置系统时钟

使用HSE配置系统时钟控制LED灯闪烁频率

RCC 主要作用—时钟部分
RCC :reset clock control 复位和时钟控制器
设置系统时钟 SYSCLK、设置 AHB 分频因子(决定 HCLK 大小)、设置 APB2 分频因子(决定 PCLK2 大小)、设置 APB1 分频因子(决定 PCLK1 大小)、设置各个外设的分频因子;控制 AHB、APB2 和 APB1 这三条总线时钟的开启、控制每个外设的时钟的开启。
库函数的标准时钟配置为PCLK2 = HCLK = SYSCLK=PLLCLK = 72M,PCLK1=HCLK/2 = 36M。

RCC 框图剖析—时钟部分
选取库函数时钟系统时钟函数:SetSysClockTo72(); 通过对该函数的编写流程来熟悉时钟树。

着重了解一下使用HSE来配置系统时钟,对应的是图中的黄色部分。上面的 7 个步骤对应的设置系统时钟库函数如下,该函数截取自固件库文件 system_stm32f10x.c

static void SetSysClockTo72(void)
{  __IO uint32_t StartUpCounter = 0, HSEStatus = 0;//	使能 HSE,并等待 HSE 稳定RCC->CR |= ((uint32_t)RCC_CR_HSEON);do // 等待 HSE 启动稳定,并做超时处理{HSEStatus = RCC->CR & RCC_CR_HSERDY;StartUpCounter++;  } while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT));if ((RCC->CR & RCC_CR_HSERDY) != RESET){HSEStatus = (uint32_t)0x01;}

更多推荐

STM32使用HSE配置系统时钟

本文发布于:2024-03-05 14:38:37,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1712568.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:时钟   系统   HSE

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!