您的位置 首页 传感器

STM32F051R8T6的RCC装备

/**OSC=8M*PLLCLK=48M*SYSCLK=48M*HCLK=48M*/voidRCC_Configuration(void){ErrorStatusHSEStartUpStatus;RC

/*

* 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晶振翻开(ON)
HSEStartUpStatus = RCC_WaitForHSEStartUp();
if(HSEStartUpStatus == SUCCESS) //SUCCESS:HSE晶振安稳且安排妥当
{
FLASH_SetLatency(FLASH_Latency_1); //FLASH_Latency_1 1延时周期
FLASH_PrefetchBufferCmd(ENABLE); // 预取指缓存使能

/* 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时钟 HCLK= SYSCLK(48)体系时钟
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体系时钟 SYSCLK = PLLCLK
while(RCC_GetSYSCLKSource() != 0x08){} //等候体系时钟设置成功 0x08:PLL作为体系时钟
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/chuanganqi/276323.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部