嵌入式学习笔记 - STM32的HAL_RCC_GetSysClockFreq()函数讲解(1)

HAL_RCC_GetSysClockFreq()函数的定义位于stm32fxx_hal_rcc.c文件中,隶属于复位与时钟模块RCC,见下图:

此函数关于时钟频率的计算是建立在内部时钟源HSI_VALUE(如果选择的是这个时钟源),或者外部时钟源HSE_VALUE(如果选择的是这个时钟源)确定的情况下,通常情况下,这两个时钟源数值被定义为常量8000000hz,存放在stm32f1xx_hal_conf.h文件中,如下图

而且在cubeMX 的时钟树中这两个值也是不可选的,如下图,但是如果用户使用了非8M的外部晶振,那么这个数值就要手动更改,以保证系统获得的SystemCoreClock数值是正确的,系统各运行时基是准确的。并且即便是用的内部时钟源HSI也是不稳定的,会随着温度电压值的变化而变化。

注:此函数最终获得的是SYSCLK frequency,就是上图中绿色标注的地方的频率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值