初级会员

- 积分
- 151
- 金钱
- 151
- 注册时间
- 2019-4-15
- 在线时间
- 39 小时
|
1金钱
void SysClk_Config(u8 PLL)
{
RCC_DeInit(); //初始化
//RCC_HSICmd(ENABLE); //开启内部高速晶振
RCC_HSEConfig(RCC_HSE_ON); //打开HSE时钟
while(RCC_WaitForHSEStartUp() == ERROR); //等待HSE起振
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); //开启FLASH预读缓冲功能,加速FLASH的读取。所有程序中必须的用法.位置:RCC初始化子函数里面,时钟起振之后
FLASH_SetLatency(FLASH_Latency_2); //flash操作的延时
RCC_PLLConfig(RCC_PLLSource_HSE_Div1,(PLL-2)*0x00040000); //PLLCLK = HSECLK * 9 = 72MHz
//RCC_PLLConfig(0x00010000,(PLL-2)*0x00040000); //PLLCLK = HSECLK * 9 = 72MHz
//RCC_PLLConfig(RCC_PLLSource_HSI_Div2,(PLL-2)*0x00040000);
RCC_PLLCmd(ENABLE); //使能PLL
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET); //等待PLL就绪
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //配置系统时钟源位PLLCLK
while(RCC_GetSYSCLKSource() != 0x08);
RCC_HCLKConfig(RCC_SYSCLK_Div1); //HCLK = SYSCLK
RCC_PCLK1Config(RCC_HCLK_Div2); //PCLK1 = HCLK / 2
RCC_PCLK2Config(RCC_HCLK_Div1); //PCLK2 = HCLK / 1
RCC_ADCCLKConfig(RCC_PCLK2_Div8); //ADCCLK = PCKL2 / 8
}
请问下RCC_PLLConfig(RCC_PLLSource_HSE_Div1,(PLL-2)*0x00040000);这句PLL写多少跟RCC_PLLMul_9这个效果一样,看不懂(PLL-2)*0x00040000,求教!
|
|