谁能告诉我如何找到STM32F429的APB1时钟频率?以及如何计算STM32F429的波特率。
PS..请不要参考参考手册,因为这些工作已经完成,我想告诉我 APB1 时钟频率的确切值
谢谢
谁能告诉我如何找到STM32F429的APB1时钟频率?以及如何计算STM32F429的波特率。
PS..请不要参考参考手册,因为这些工作已经完成,我想告诉我 APB1 时钟频率的确切值
谢谢
使用标准外设库,包含stm32f4xx_rcc.h
然后调用void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks)
,它将用所有总线时钟的值填充您传递的结构。
答案的正确性取决于您设置的值HSI_VALUE
或HSE_VALUE
(全局uint32_t
设置为系统振荡器的 Hz 值)。您可以在应用程序的启动 C 文件中找到它。
您应该查看启动文件中的值,以确保内核时钟是从您期望的源生成的(通常是通过内部 (HSI) 或外部 (HSE) 晶振的 PLL)。如果它们是正确的并且与前面提到的全局常数相匹配,那么给出的答案就是RCC_GetClocksFreq
正确的。
For STM32CubeIDE
#include "stm32f4xx_hal_rcc.h"
uint32_t Fpclk1 = HAL_RCC_GetPCLK1Freq();
PCLK1 and APB1 clock are synonymous