##时钟配置
- 从工程启动文件 system_stm32f4xx.c 中void SystemInit(void)的开始运行;
- 主频配置
- /* Configure the main PLL */
RCC->PLLCFGR = PLL_M | (PLL_N << 6) | (((PLL_P >> 1) -1) << 16) |
(RCC_PLLCFGR_PLLSRC_HSE) | (PLL_Q << 24);
- /* Configure the main PLL */
- 系数配置
- 使用外部时钟源,配置外部时钟频率:stm32f4xx.h
- #define HSE_VALUE ((uint32_t)8000000)
- 系统时钟系数
- #define PLL_M 8
- #define PLL_Q 7
- #define PLL_N 336
- #define PLL_P 2
- PLL = HSE_VALUE * N / ( M * P ) = 8MHz * 336 / ( 8 * 2 ) = 168MHz
- 注意编译器中宏定义,其对整个工程有效。
- 使用外部时钟源,配置外部时钟频率:stm32f4xx.h
Reference notes:
1、(if)AHB最大时钟为 168MHz, APB2高速时钟最大频率为 84MHz,而 APB1低速时钟最大频率为 42MHz。
2、KEIL编译器安装的PACK不一样会致Lib路径不一致,需重新编译。