STM32F4手动调整时钟

void RccConfig(void)
{
/* 禁止中断 */
RCC->CIR = 0;

/* 使能HSE */
RCC->CR = 0x10000;

/* 等待HSE稳定 */
while( (RCC->CR & 0x20000) == 0 );

/* 使能时钟安全检测 */
RCC->CR |= 0x80000;

/* 填写PLL参数 */
RCC->PLLCFGR = 0x7405408;

/* 使能主PLL */
RCC->CR |= 0x1000000;

/* 等待PLL稳定 */
while(0 == (RCC->CR & 0x2000000));

FLASH->ACR = 0x705;

/* 选择PLL作为系统时钟源 */
RCC->CFGR = 0x9400;

RCC->CFGR |= 0x02;

/* 等待PLL变成系统时钟 */
while( 0x08 != (RCC->CFGR & 0x0C));

}


外部晶振8M 系统168M

APB2CLK = 84M

APB1CLK = 42M

AHBCLK = 168M


你可能感兴趣的:(STM32)