我正在调试一块数控电源,采用的TMS320F28035芯片在运行过程中时常出现宕机现象,采用仿真器跟踪发现,在芯片出错后,程序似乎从头开始执行,并停止在了InitSysCtrl()函数中的InitPLL()函数里,具体卡死的语句为
while(SysCtrlRegs.PLLSTS.bit.PLLLOCKS != 1) { // Uncomment to service the watchdog // ServiceDog(); }
我用示波器观察过复位引脚和电源的波形,没有发现明显毛刺,在走线上也采用了功率地和信号地分开走线、单点接地的方式,附上PCB图(PCB比较渣,各位轻拍)
功率地在顶层接地
信号地在底层接地
各电源引脚去耦电容采用的是10uF(1.8V)和2.2uF(3.3V),小弟愚笨,对于导致这个问题的原因百思不得其解,希望各位能够为我解答,先行谢过各位。