久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 【STM32筆記】RCC配置函數

【STM32筆記】RCC配置函數

作者: 時間:2016-11-28 來源:網絡 收藏
voidRCC_Configuration(void)
{
ErrorStatusHSEStartUpStatus;

//使能外部晶振
RCC_HSEConfig(RCC_HSE_ON);
//等待外部晶振穩定
HSEStartUpStatus=RCC_WaitForHSEStartUp();
//如果外部晶振啟動成功,則進行下一步操作
if(HSEStartUpStatus==SUCCESS)
{
//設置HCLK(AHB時鐘)=SYSCLK
RCC_HCLKConfig(RCC_SYSCLK_Div1);

//PCLK1(APB1) = HCLK/2
RCC_PCLK1Config(RCC_HCLK_Div2);

//PCLK2(APB2) = HCLK
RCC_PCLK2Config(RCC_HCLK_Div1);

//設置ADC時鐘頻率
RCC_ADCCLKConfig(RCC_PCLK2_Div2);

//FLASH時序控制
//推薦值:SYSCLK = 0~24MHzLatency=0
//SYSCLK = 24~48MHz Latency=1
//SYSCLK = 48~72MHz Latency=2
FLASH_SetLatency(FLASH_Latency_2);
//開啟FLASH預取指功能
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);

//PLL設置 SYSCLK/1 * 9 = 8*1*9 = 72MHz
RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);
//啟動PLL
RCC_PLLCmd(ENABLE);
//等待PLL穩定
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET);
//系統時鐘SYSCLK來自PLL輸出
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
//切換時鐘后等待系統時鐘穩定
while(RCC_GetSYSCLKSource()!=0x08);


}


關鍵詞: STM32RCC配置函

評論


技術專區

關閉