stm32F4系列的芯片相对与以前M3内核的芯片最大的不同是对时钟进行了很多的优化,采用了两个锁相环,一个用于IIS,不知道在音频处理上面会有什么效果,另一个则是用于M4核心和大部分外设。
官方的库中system_stm32f4xx.c文件中已经给我们提供了时钟配置函数,其中我们只要修改文件头中的定义就可以修改系统频率:
#define PLL_M 8
#define PLL_N 288
#define PLL_P 2
#define PLL_Q 6
f(PLL general clock output)=f(PLL clock input) * PLLN / PLLM / PLLP
f(USB OTG SDIO RNG clock output=f(PLL clock input) * PLLN / PLLM / PLLQ
通过计算锁相环输出时钟频率为144MHz,供给USB、SDIO等的频率为48MHz。
对于锁相环输出的时钟,供给AHB总线的时候可以进行分频,得到自己想要的时钟频率,在AHB总线上有可以分频给APBx供给外设作为时钟频率。
未完待续