因仑“3+1”工程特种兵精英论坛

标题: STM32l用HSI作为PLL时钟源给USB的问题 [打印本页]

作者: 123321    时间: 2015-3-23 14:19
标题: STM32l用HSI作为PLL时钟源给USB的问题
芯片是STM32L151RB,系统目前没用外部晶振,之前用HSI做系统时钟,把ADC,UART等都跑起来了。
现在要试USB,据说只能用PLL倍频到24M给USB。
结果PLL设置就一直不行,愁死我了。
代码应该很简单,但就是会卡在    while( RCC_GetSYSCLKSource() != 0x0C );
有这样做过的来给提点一下吧,多谢了。

  RCC_HSICmd(ENABLE);

  /*!< Wait till HSI is ready */
  while (RCC_GetFlagStatus(RCC_FLAG_HSIRDY) == RESET);

    RCC_PLLCmd(DISABLE);     
    // set PLLMUX to 16*6, and PLL to 16*6/4
    RCC_PLLConfig(RCC_PLLSource_HSI, RCC_PLLMul_6, RCC_PLLDiv_4);
    /* PLL enable */
    RCC_PLLCmd(ENABLE);
    /* wait for PLL stable */
    while(RESET == RCC_GetFlagStatus(RCC_FLAG_PLLRDY));
    // set PLL as sysclk
    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
    // Wait for the sysclock to be confirmed as our clock source.
    while( RCC_GetSYSCLKSource() != 0x0C );

    // Enable USB
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_USB, ENABLE);







欢迎光临 因仑“3+1”工程特种兵精英论坛 (http://bbs.enlern.com/) Powered by Discuz! X3.4