码迷,mamicode.com
首页 > 其他好文 > 详细

1、时钟配置

时间:2015-05-24 17:05:33      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:

技术分享

 

 

技术分享
 1 /*CPU跑72M的时候,各个系统的速度
 2 频率定义函数:SystemInit()*/
 3 const uint32_t SystemFrequency = SYSCLK_FREQ_72MHz;//硬件频率72M    
 4    
 5 const uint32_t SystemFrequency_SysClk =SYSCLK_FREQ_72MHz;//系统时钟   
 6    
 7 const uint32_t SystemFrequency_AHBClk = SYSCLK_FREQ_72MHz;//AHB总线频率    
 8   
 9  const uint32_t SystemFrequency_APB1Clk = (SYSCLK_FREQ_72MHz/2);
10 //APB1总线   
11 const uint32_t SystemFrequency_APB2Clk = SYSCLK_FREQ_72MHz;//APB2总线频率
12 
13 
14 
15 
16 /*如果频率不是72M(最高是80M),如果需要修改频率的话,可以如下:*/
17 void RCC_HSE_Configuration(void) //HSE作为PLL时钟,PLL作为SYSCLK 
18 
19 { 
20   RCC_DeInit(); //将外设RCC寄存器重设为缺省值 
21   RCC_HSEConfig(RCC_HSE_ON);//设置外部高速晶振(HSE) HSE晶振打开(ON)  
22   if(RCC_WaitForHSEStartUp() == SUCCESS) //等待HSE起振,  SUCCESS:HSE晶振稳定且就绪  
23   { 
24   
25     RCC_HCLKConfig(RCC_SYSCLK_Div1);//设置AHB时钟(HCLK)RCC_SYSCLK_Div1——AHB时钟 = 系统时 
26    
27     RCC_PCLK2Config(RCC_HCLK_Div1); //设置高速AHB时钟(PCLK2)RCC_HCLK_Div1——APB2时钟 = HCLK     
28    
29     RCC_PCLK1Config(RCC_HCLK_Div2); //设置低速AHB时钟(PCLK1)RCC_HCLK_Div2——APB1时钟 = HCLK  
30     RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);//设置PLL时钟源及倍频系数  
31    
32     RCC_PLLCmd(ENABLE); //使能PLL  
33   
34     while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) ;//检查指定的RCC标志位(PLL准备好标志)设置与否
35    
36     RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //设置系统时钟(SYSCLK)    
37     while(RCC_GetSYSCLKSource() != 0x08); //0x08:PLL作为系统时钟      
38   
39    }
40 
41 }
42  
View Code

 

1、时钟配置

标签:

原文地址:http://www.cnblogs.com/STM32bo/p/4526016.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!