在RT-Thread移植过程中,如何处理缺少SystemCoreClockUpdate函数的问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计641个文字,预计阅读时间需要3分钟。
一、问题+在移植RT-Thead+STM32时,需要获取MCU当前的HCLK时钟频率来设置中断回答时钟,而我使用的库函数中恰好缺少SystemCoreClockUpdate函数。+ 我之前在RT-Thread移植到STM32中时,直接忽视了SystemCoreClock的配置。
一、问题在移植 RT-Thead 时,需要获取mcu当前的 HCLK 时钟频率来设置滴答时钟,而我使用的库函数中刚好缺少SystemCoreClockUpdate函数。
我之前在RT-Thread移植到stm32中是直接忽视SystemCoreClockUpdate函数的调用直接给SystemCoreClock赋值为72000000,如下图所示:
对于不熟悉时钟系统的小伙伴,在遇到使用的系统时钟不是72MHz时,产生的错误可能无法解决,所以我决定把SystemCoreClockUpdate函数重写一下,解决之前遗留的问题。
二、SystemCoreClockUpdate函数-
SystemCoreClockUpdate()作用:是用来更新SystemCoreClock 变量,在每次配置系统时钟后,都需要使用SystemCoreClockUpdate()更新SystemCoreClock 变量,确保配置滴答时钟时正确。
本文共计641个文字,预计阅读时间需要3分钟。
一、问题+在移植RT-Thead+STM32时,需要获取MCU当前的HCLK时钟频率来设置中断回答时钟,而我使用的库函数中恰好缺少SystemCoreClockUpdate函数。+ 我之前在RT-Thread移植到STM32中时,直接忽视了SystemCoreClock的配置。
一、问题在移植 RT-Thead 时,需要获取mcu当前的 HCLK 时钟频率来设置滴答时钟,而我使用的库函数中刚好缺少SystemCoreClockUpdate函数。
我之前在RT-Thread移植到stm32中是直接忽视SystemCoreClockUpdate函数的调用直接给SystemCoreClock赋值为72000000,如下图所示:
对于不熟悉时钟系统的小伙伴,在遇到使用的系统时钟不是72MHz时,产生的错误可能无法解决,所以我决定把SystemCoreClockUpdate函数重写一下,解决之前遗留的问题。
二、SystemCoreClockUpdate函数-
SystemCoreClockUpdate()作用:是用来更新SystemCoreClock 变量,在每次配置系统时钟后,都需要使用SystemCoreClockUpdate()更新SystemCoreClock 变量,确保配置滴答时钟时正确。

