IAR下stm32使用12M外部晶振

系统默认的是使用8M外部晶振,需修改三个地方: 
第一步,打开stm32f10x.h,将

define HSE_VALUE ((uint32_t)8000000) /!< Value of the External oscillator in Hz /

修改为:

define HSE_VALUE ((uint32_t)12000000) /!< Value of the External oscillator in Hz /

第二步,打开system_stm32f10x.c,修改PLL参数,将
/*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz */
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);

修改为: 
/* PLL configuration: PLLCLK = HSE * 6 = 72 MHz */ 
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); 

第三步,使用#define SYSCLK_FREQ_72MHz 72000000 
第四步,修改project option 
这里写图片描述 
在Defined symbols中,添加HSE_VALUE=((uint32_t)12000000)

你可能感兴趣的:(嵌入式,STM32,C)