LM3S1138无法设置PLL



void  SystemInit(void) {

   SysCtlLDOSet(SYSCTL_LDO_2_75V);                             //  配置PLL前须将LDO电压设置为2.75V

    SysCtlClockSet(SYSCTL_USE_PLL |                             //  系统时钟设置,采用PLL                    SYSCTL_OSC_MAIN |                            //  主振荡器                    SYSCTL_XTAL_6MHZ |                           //  外接6MHz晶振                    SYSCTL_SYSDIV_5);                          //  分频结果为40MHz         TheSysClock  =  SysCtlClockGet();                           //  获取系统时钟,单位:Hz  

   }

有块核心板  一运行时钟设置就死机   而改成外部6M时钟能正常运行  经过单步调试  发现程序到了这里就死了  



if(!(ulConfig & SYSCTL_RCC_BYPASS)) 

{ for(ulDelay = 32768; ulDelay > 0; ulDelay--)

   { if(HWREG(SYSCTL_RIS) & SYSCTL_INT_PLL_LOCK)

    {

     break;//等待锁相环锁定 }

      }

(备注  :买的核心板  而另一块则无该问题)

  • Hi dirtwillfly,

      有些早期版本的LM3S1138确实有PLL锁定出问题的情况,你可以先尝试改变一下分频系数,看看其他的主频会不会有问题。即改变SYSCTL_SYSDIV_X。

      另外我们现在已经不建议在采用LM3S的M3产品进行产品的开发了,如果可以的话,你可以选择我们的TM4C系列的M4产品进行研究和开发。

    谢谢

    ken