STM32将12M晶振换8M晶振后Keil及程序的相关设置

外部从12M晶振换8M晶振,如果还想是72MHZ时钟,只需要改三个地方:

首先:stm32f10x.h和system_gd32f10x.c文件可以通过下图找到

 

STM32将12M晶振换8M晶振后Keil及程序的相关设置_第1张图片


1、stm32f10x.h中,将#define HSE_VALUE    ((uint32_t)12000000)改为#define HSE_VALUE   ((uint32_t)8000000)

在stm32f10x.h中,改后如下图

STM32将12M晶振换8M晶振后Keil及程序的相关设置_第2张图片

2、system_gd32f1x0.c中,使用72M的那个宏,即改为如下:
//#define SYSCLK_FREQ_HSE    HSE_VALUE 
//#define SYSCLK_FREQ_24MHz  24000000  
//#define SYSCLK_FREQ_36MHz  36000000 
//#define SYSCLK_FREQ_48MHz  48000000 
//#define SYSCLK_FREQ_56MHz  56000000 
#define SYSCLK_FREQ_72MHz  72000000

 

在stm32f10x.h文件中改后如下图数据

STM32将12M晶振换8M晶振后Keil及程序的相关设置_第3张图片


3、如果是在keil中调试下载,工程选项中修改如下,Xtal(MHz)标签旁从12.0改为8.0。

                                                 STM32将12M晶振换8M晶振后Keil及程序的相关设置_第4张图片

 最后,一定要注意,在时钟配置的时候不要忘了改动倍频系数,在时钟初始化函数void RCC_Configuration(void)中, RCC_PLLMul_6改为RCC_PLLMul_9,即为:

         
    RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);


当然,如果将8M改为12M或其他晶振,方法类似。

你可能感兴趣的:(STM32将12M晶振换8M晶振后Keil及程序的相关设置)