本文主要讲STM32 M0的时钟配置。
先来看看M0内核的时钟树(stm32f072)
图中可以看出,M0芯片的时钟源有4个,一个高速内部RC时钟源,频率为8M;一个高速外部时钟源,频率为8到32MHz;一个低速外部时钟源,频率一般为32.768kHz;一个低速内部时钟源,频率为40kHz;
一、HSI
芯片上电的时候默认启用内部RC震荡,即8MHz的内部时钟源,如果对时钟要求不是特尔高的时候,使用内部时钟也够了,省下一个外部晶振的钱。
下面首先说说使用内部时钟的配置,官方提供的demo默认的就是使用内部时钟的,我们先从时钟树分析,HSI(8MHz)启动,经过PLLSRC(锁相环时钟源选择寄存器),然后来到PREDIV(预分频器),预分频器选择不分频,然后是PLLMUL(锁相环倍频),这里倍频6倍,得到48MHz的频率,注意不要高于48MHz,芯片最大支持的就是48MHz.,然后是SW(时钟源选择寄存器),这里选择PLLCLK(倍频后的锁相环时钟),其实在