【STM32筆記】RCC配置函數(shù) 作者: 時間:2016-11-28 來源:網(wǎng)絡 加入技術交流群 掃碼加入和技術大咖面對面交流海量資料庫查詢 收藏 voidRCC_Configuration(void){ErrorStatusHSEStartUpStatus;//使能外部晶振RCC_HSEConfig(RCC_HSE_ON);//等待外部晶振穩(wěn)定HSEStartUpStatus=RCC_WaitForHSEStartUp();//如果外部晶振啟動成功,則進行下一步操作if(HSEStartUpStatus==SUCCESS){//設置HCLK(AHB時鐘)=SYSCLKRCC_HCLKConfig(RCC_SYSCLK_Div1);//PCLK1(APB1) = HCLK/2RCC_PCLK1Config(RCC_HCLK_Div2);//PCLK2(APB2) = HCLKRCC_PCLK2Config(RCC_HCLK_Div1);//設置ADC時鐘頻率RCC_ADCCLKConfig(RCC_PCLK2_Div2);//FLASH時序控制//推薦值:SYSCLK = 0~24MHzLatency=0//SYSCLK = 24~48MHz Latency=1//SYSCLK = 48~72MHz Latency=2FLASH_SetLatency(FLASH_Latency_2);//開啟FLASH預取指功能FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);//PLL設置 SYSCLK/1 * 9 = 8*1*9 = 72MHzRCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);//啟動PLLRCC_PLLCmd(ENABLE);//等待PLL穩(wěn)定while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET);//系統(tǒng)時鐘SYSCLK來自PLL輸出RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);//切換時鐘后等待系統(tǒng)時鐘穩(wěn)定while(RCC_GetSYSCLKSource()!=0x08);}
評論