这样看来,系统时钟很可能工作在72MHz。
贴我的RCC设置。
void RCC_Configuration(void)
{
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); //开启FLASH的预取功能
FLASH_SetLatency(FLASH_Latency_2); //FLASH延迟2个周期
RCC_HCLKConfig(RCC_SYSCLK_Div1); //配置HCLK,PCLK2,PCLK1,PLL
RCC_PCLK2Config(RCC_HCLK_Div1);
RCC_PCLK1Config(RCC_HCLK_Div2);
RCC_PLLConfig(RCC_PLLSource_HSI_Div2,RCC_PLLMul_16);
RCC_PLLCmd(ENABLE); //启动PLL
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET)
{} //等待PLL启动完成
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //配置系统时钟
while(RCC_GetSYSCLKSource() !=0x08) //检查是否将PLL作为系统时钟
{}
RCC_HSEConfig(RCC_HSE_Bypass);
}
发现一个问题,语句RCC_PLLConfig(RCC_PLLSource_HSI_Div2,RCC_PLLMul_16)中无论如何修改第二个参数即倍频比,都不会影响系统时钟;
为什么呢?
库版本3.3
|