有关stm32的时钟配置

2019-07-14 23:20发布

RCC时钟配置  


void RCC1_Config(void)
{
   RCC_DeInit();
   RCC_HSEConfig(RCC_HSE_ON);
   while(RCC_WaitForHSEStartUp==ERROR);
   FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
   FLASH_SetLatency(FLASH_Latency_2);
   RCC_HCLKConfig(RCC_SYSCLK_Div1);
   RCC_PCLK1Config(RCC_HCLK_Div2);
   RCC_PCLK2Config(RCC_HCLK_Div1);
   RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);
   RCC_PLLCmd(ENABLE);
   while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET);
    LED_Init(LED1);
   RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
   while(RCC_GetSYSCLKSource()!=0x08);
}
这是我时钟部分配置程序,我有两个问题1:编译时说RCC_PLLSource_HSE_Div1未定义,可是我已经将库文件STM32f10x.h和库文件stm32f10x_rcc.h包含进来了,请问是为什么2: while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET);只有将Reset改为set程序才会跳出循环,否则灯不亮,可是实际上不是应该等待Pll就绪吗,不应该是Reset吗?请问为什么?
0条回答

一周热门 更多>