標籤:函數 color signed log pre amp rcc 單位 div
STM32寄存器版本——內部時鐘設定
同時要記得把延時初始化函數設定好
1 //系統時鐘初始化函數 2 //pll:選擇的倍頻數,從2開始,最大值為16 3 //pll:選擇的倍頻數,這裡使用內部時鐘,PLL為4就是4分頻 4 void Stm32_Clock_Init(u8 PLL) 5 { 6 unsigned char temp=0; 7 MYRCC_DeInit(); //複位並配置向量表 8 // RCC->CR|=0x00010000; //外部高速時鐘使能HSEON 9 RCC->CR|=0x00000001; //內部高速時鐘使能HSEON10 11 // while(!(RCC->CR>>17)); //等待外部時鐘就緒12 while(!(RCC->CR>>1)); //等待內部時鐘就緒13 14 RCC->CFGR=0X00000000; //APB1=DIV1;APB2=DIV1;AHB=DIV1;15 16 PLL-=2;//抵消2個單位17 // RCC->CFGR|=PLL<<18; //設定PLL值 2~1618 RCC->CFGR|=PLL<<18; //設定PLL值 2~16 4倍頻19 RCC->CFGR|=0<<16; //PLLSRC ON ,內部時鐘經過兩分頻後輸入給下一個寄存器20 FLASH->ACR|=0x32; //FLASH 2個延時周期21 22 RCC->CR|=0x01000000; //PLLON23 while(!(RCC->CR>>25));//等待PLL鎖定24 RCC->CFGR|=0x00000002;//PLL作為系統時鐘 25 while(temp!=0x02) //等待PLL作為系統時鐘設定成功26 { 27 temp=RCC->CFGR>>2;28 temp&=0x03;29 } 30 }
STM32內部時鐘設定-寄存器版