void Stm32_Clock_Init(uint8_t PLL) { uint8_t temp=0; MYRCC_DeInit(); 复位并配置向量表 RCC->CR|=0x00010000; 选用外部晶振 while(!(RCC->CR &=0X00020000)); 等待外部时钟就绪 RCC->CFGR=0X00000400; PLL-=2; RCC->CFGR|=PLL<<18; 倍频到48MHZ RCC->CFGR|=1<<16; PLLSRC ON FLASH->ACR|=0x32; RCC->CR|=0x01000000; PLLON(Bit24) while(!(RCC->CR &=0X02000000)); 等待 PLLPLLPLL锁 RCC->CFGR|=0x00000002; PLL作为系统时钟 while(temp!=0x02) 等待 PLLPLLPLL作为系统时钟设置成功 { temp=RCC->CFGR>>2; temp&=0x03; } RCC->APB2ENR|=1<<0; 使能SYSCFG时钟 } |
while(!(RCC->CR &=0X00020000));