谢谢各位回复,其实蛮简单的,根据他本身的外部48M的程序改一下就可以了,新手上路,谢谢各位
#elif defined SYSTEM_CLOCK_48M_PLL_IRC8M_DIV2
static void SystemClock48M_IRC8M(void)
{
uint32_t i;
RCM->CTRL1_B.HSIEN= BIT_SET; // 使能高速内部时钟 //
for (i = 0; i < HSI_STARTUP_TIMEOUT; i++) //等待内部时钟稳定//
{
if (RCM->CTRL1_B.HSIRDY**)
{
break;
}
}
if (RCM->CTRL1_B.HSIRDY**)
{
FMC->CTRL1_B.PBEN = BIT_SET; // 使能预取缓存区 //
FMC->CTRL1_B.WS = 1; // Flash 1 等待一个时钟周期 //
RCM->CFG1_B.AHBPSC= 0X00; // HCLK = SYSCLK AHB时钟不分频 //
RCM->CFG1_B.APB1PSC = 0X00; // PCLK = HCLK APB1时钟不分频//
RCM->CFG1_B.PLLSRCSEL = 0; // HSICLK 2分频后为PLL时钟源//
RCM->CFG1_B.PLLMULCFG = 10; // PLL倍频系数为12 //
RCM->CTRL1_B.PLLEN = 1; // 使能 PLL //
while (RCM->CTRL1_B.PLLRDY** == BIT_RESET);// 等待PLL稳定 //
RCM->CFG1_B.SCLKSEL = 2; // 选择PLL为系统时钟源 //
while (RCM->CFG1_B.SCLKSWSTS!= 0x02);// 等待PLL被系统确认为时钟源 //
}
}
|