IAR下stm32使用12M外部晶振
阿新 • • 發佈:2019-02-16
系統預設的是使用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)