贴上程序。
void RCC_Config(void)
{
RCC_DeInit();
/* use external osc 4M */
RCC_HSEConfig(RCC_HSE_ON);
/* Wait for hse startup */
while(!RCC_WaitForHSEStartUp());
/* Select the HSE as the PLL source */
/* Config the pll clock 96M HZ */
RCC_PLLConfig(RCC_PLLSource_HSE, RCC_PLLMul_24, RCC_PLLDiv_4);
/* Select the HSE as the system clk */
RCC_SYSCLKConfig(RCC_SYSCLKSource_HSE); 这里配置为PLL,USB才能工作,使用HSE就不行
/* Set system clk as HCLK */
RCC_HCLKConfig(RCC_SYSCLK_Div1); 这里HCLK不配置为12,24M, USB无法工作
/* Set APB1_CLK = HCLK */
RCC_PCLK1Config(RCC_HCLK_Div1);
/* Set APB2_CLK = HCLK */
RCC_PCLK2Config(RCC_HCLK_Div1);