关于CFGR2设置

2019-03-23 19:45发布

各位前辈,本人初学STM32,实验室有块板子,上面是stm32f107芯片的,时钟是25M,我根据手册说明,想通过设置寄存器得到72M系统时钟,以下是我的程序: void MYRCC_Init(void)
{
 MYRCC_DeInit();
  
 RCC->CR|=1<<16; //外部高速时钟使能 HSION
 while(!RCC->CR>>17);//等待外部时钟就绪  RCC->CFGR2 |=4<<4;//预分频2进行5分频
 RCC->CFGR2 |=0x0E<<8;//PLL2倍频16倍
 RCC->CR|=1<<26;//PLL2倍频开
 while(!(RCC->CR>>27));//等待PLL2锁定  RCC->CFGR2 |=1<<16;//PLL2作为预分频1的时钟源
 RCC->CFGR2 |=9;//预分频1进行10倍分频
 RCC->CFGR|=1<<16;//预分频11输出作为PLL输入时钟  RCC->CFGR|=7<<18;//PLL1倍频9倍
 RCC->CR|=1<<24;//PLL1倍频开
 while(!(RCC->CR>>25));//等待PLL1锁定
 RCC->CFGR|=2<<1;//选择PLL输出作为系统时钟源 
} 具体步骤:HSE(25MHZ)->PREDIV2(5分频)——5MHZ——>PLL2MUL(16倍频)——80MHZ——>PREDIV1SCR(选择PLL2)——80MHZ——>PREDIV1(10分频)——8MHZ——>PLLSCR(PREDIV1输入)——8MHZ——>PLLMUL(9倍频)——72MHZ——>SW(选择PLL)——SYSCLK(72MHZ).   但在程序编译的时候出现错误编译不过,错误提示如下:struct "<unnamed>" has no field "CFGR2" 请求前辈指导,感谢! 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。