STM32F334系统时钟的配置RCC_Config()

MCU:STM32F334C8T6

Frameware:STM32F3348-Discovery_FW_V1.0.0

RCC时钟配置步骤:

  1. 重置RCC为默认值:RCC_DeInit();  库函数中可以查到这个函数选择HSI为系统时钟(见图)
  2. 打开外部高速时钟晶振HSE
  3. 等待HSE工作
  4. 设置AHB时钟
  5. 设置高速APB(2)时钟
  6. 设置低速APB(1)时钟
  7. 设置PLL
  8. 打开PLL
  9. 等待PLL工作
  10. 设置系统时钟
  11. 等待系统时钟设置成功
  12. 打开所需时钟
代码:
void RCC_Config(void)
{
	// 1. 默认设置,HSI为系统时钟: 8M
	RCC_DeInit();
	// 2. 打开HSE : 8M
	RCC_HSEConfig(RCC_HSE_ON);
	// 3. 等待
	RCC_WaitForHSEStartUp();
	// 4. 设置AHB = SYSCLK
	RCC_HCLKConfig(RCC_SYSCLK_Div1);
	// 5. 设置APB2 = AHB
	RCC_PCLK2Config(RCC_HCLK_Div1);
	// 6. 设置APB1 = AHB/2
	RCC_PCLK1Config(RCC_HCLK_Div2);
	// 7. 设置PLL  , Source = 8M , PLLMul = 9 
	RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9);
	// 8. 打开PLL
	RCC_PLLCmd(ENABLE);
	// 9. 等等PLL 就绪
	while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);
	// 10. 设置系统时钟SYSCLK=PLLCLK=8*9=72M
	RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
	// 11.等待设置成功
	while(RCC_GetSYSCLKSource() != 0x08);
	
	// 12. 打开使用的时钟
	//..............
}
设置完成,系统时钟 :SYSCLK=72M,AHB: HCLK=72M,APB2:PCLK2=72M,PAB1:PCLK1=36M

附图:
STM32F334xx时钟树:

STM32F334系统时钟的配置RCC_Config()_第1张图片

wind 
2015,03,28

你可能感兴趣的:(STM32,STM32学习笔记,stm32,RCC)