新聞中心

STM32F051R8T6的RCC配置

作者: 時(shí)間:2016-11-10 來(lái)源:網(wǎng)絡(luò) 收藏
/*
* OSC=8M
* PLLCLK=48M
* SYSCLK=48M
* HCLK=48M
*/

void RCC_Configuration(void)
{
ErrorStatus HSEStartUpStatus;
RCC_DeInit();
RCC_HSEConfig(RCC_HSE_ON); //RCC_HSE_ON--HSE晶振打開(kāi)(ON)
HSEStartUpStatus = RCC_WaitForHSEStartUp();
if(HSEStartUpStatus == SUCCESS) //SUCCESS:HSE晶振穩(wěn)定且就緒
{
FLASH_SetLatency(FLASH_Latency_1); //FLASH_Latency_1 1延時(shí)周期
FLASH_PrefetchBufferCmd(ENABLE); // 預(yù)取指緩存使能

/* PLL configuration: pllclk= HSE * 6 = 48 MHz */
RCC_PREDIV1Config(RCC_PREDIV1_Div1);
RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_6);

RCC_HCLKConfig(RCC_SYSCLK_Div1); //RCC_SYSCLK_Div1--AHB時(shí)鐘 HCLK= SYSCLK(48)系統(tǒng)時(shí)鐘
RCC_PCLKConfig(RCC_HCLK_Div1); //PCLK = HCLK = 48

RCC_PLLCmd(ENABLE);
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET){}

RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //選擇PLL作為sysclk系統(tǒng)時(shí)鐘 SYSCLK = PLLCLK
while(RCC_GetSYSCLKSource() != 0x08){} //等待系統(tǒng)時(shí)鐘設(shè)置成功 0x08:PLL作為系統(tǒng)時(shí)鐘
}
}

本文引用地址:http://m.butianyuan.cn/article/201611/317511.htm



關(guān)鍵詞: STM32F051R8T6RCC配

評(píng)論


技術(shù)專區(qū)

關(guān)閉