stm32F10系列默认外接 8M ,将HSE配置为系统时钟

stm32F10系列默认外接 8M ,用固件库函数将HSE配置为系统时钟,学习分享,希望对大家有所帮助!


/*******************************************************************************

* Function Name  :  HSESysClk_Config
* Description    : 
* Input          :  
* Output         :   HSEÅäÖÃϵͳʱÖÓ
* Return         : 
*******************************************************************************/
void HSESysClk_Config(uint32_t RCC_PLLMul_x)
{
ErrorStatus   HSEstatus;


  RCC_DeInit();   //¸´Î»ºóºóÐøµÄÅäÖòſÉдµ½¼Ä´æÆ÷
RCC_HSEConfig(RCC_HSE_ON);    //
HSEstatus = RCC_WaitForHSEStartUp();    

if(HSEstatus == SUCCESS)
{
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);    //Ԥȡֵ
FLASH_SetLatency(FLASH_Latency_2);

RCC_HCLKConfig(RCC_SYSCLK_Div1);
RCC_PCLK1Config(RCC_HCLK_Div2);
RCC_PCLK2Config(RCC_SYSCLK_Div1);

RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_x);     //ÅäÖÃPLLʱÖÓ ¸ù¾Ý±¶ÆµÒò×ÓÅä
RCC_PLLCmd(ENABLE);  //ʹÄÜ PLL

while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);   //µÈ´ý×¼±¸ºÃ
 
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //ÅäÖÃϵͳʱÖÓΪ PLL
 
    while(RCC_GetSYSCLKSource() != 0x08);     //¼ì²âʱÖÓÔ´  0x08  PLL clock
}
else
{
//Èç¹ûHSEÆô¶¯Ê§°Ü£¬¿É¼Ó´íÎó´¦Àí
  }

}





要注意选 的 (STM32FL0X_XX)系列,可以打开对应的宏定义!




上图stm32 的 MCO 引脚可以进行配置用示波器测试配置的时钟是否正确!




猜你喜欢

转载自blog.csdn.net/qq_31151059/article/details/78810709