unsigned char SysClockSet(unsigned char OSC, unsigned char Clock)
用于设置MCU的时钟,两个参数,前一个(OSC)用于选择内部晶振还是外部晶振,这能是HSE或者HSI,这个在H文件中有定义;
第二个参数 Clock,范围0~25,对应不同的主频,具体值看程序里面switch语句部分就明白了;
然后要说一点,HSE_VALUE 和 HSI_VALUE是外部和内部晶振的频率,这个值在 stm32f4xx.h 里面有定义的,如果是你自己做的板子,那么就需要根据你所采用的晶振数值到stm32f4xx.h里面把 HSE_VALUE 修改一下即可;
SysClockGet(void)函数用来获取当前MCU主频,返回值的单位是Hz;
再PS:用此程序,可以动态的调整MCU主频,就是在MCU运行中,根据实际工作量的多少升降主频,我试过,蛮好使的,而且可以超频,216MHz没有问题,240MHz要看芯片体质,有些可以长时间运行,260MHz,更要看体质了,反正我的芯片是真呢过跑个几分钟,然后就死机了。