stm32 外部8M晶振 改为12M的方法

Posted zzq888

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32 外部8M晶振 改为12M的方法相关的知识,希望对你有一定的参考价值。

   第一步,打开stm32f10x.h,将 
   #define HSE_VALUE    ((uint32_t)8000000)  修改为:  #define HSE_VALUE    ((uint32_t)12000000)  
   第二步,打开system_stm32f10x.c,修改PLL参数,将       
     RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |                                          RCC_CFGR_PLLMULL)); 
     RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);  
       修改为:       
     RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |                                          RCC_CFGR_PLLMULL)); 
     RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6);      
  第三步,打开建立的STM32工程,选择Projects-〉Options for target ***,找到Target标签,外接的晶振默认是8MHz,我们将外接的晶振参数修改为12MHz,确定保存,再编译,调试即可。

以上是关于stm32 外部8M晶振 改为12M的方法的主要内容,如果未能解决你的问题,请参考以下文章

单片机或ARM外部晶振最大值由啥因素决定的?比如说Freescale Kinetis Cortex-M0+外部晶振貌似只有8M

stm32为啥有内部晶振和外部晶振

STM32F407外部晶体改为25M后检测不到芯片的解决办法

4M的外部时钟怎么设置STM32系统时钟

stm32晶振8m是啥意思

stm32为啥要两个晶振