今天,同事跟我说,有一台设备,现象很怪!第一次上电,人机界面显示的电压不正常,系统的3相电压都是60伏,但是设备显示的,都在0伏左右,重新上电,就好了,这样的设备不能出厂呀,拿来我看!
一测,果然如此,在重新上电,测试100次,都正常,然后把板子拔下来,放置10分钟,在插上去,上测试台,还是不能正常显示系统的电压,这时,首先怀疑是16位AD出了问题,因为AD的复位是通过ZET6控制的,上示波器,发现信复位号正常,而第二次上电正常,说明总线是没有问题的。挂上JLINL,运行全正常,说明板子硬件部分不会有大的问题。就是某一个器件有问题。
那问题就应该出现在ZET6上,第一件事儿,ZET6的复位,示波器显示正常,在看晶振,信号也挺好呀,一直没有怀疑锁频,因为与上位机的通讯是正常的,说明波特率是正确的,那么就应该是工作在72M的,调试到了僵局了,MD,昨天还说别人的调试盲目,看吧,今天就出问题了,报应呀! 抽烟吧!边抽烟,边后悔呀,现在这个设备,基本上FFT+后继的数据分析,已经快满负荷了,所以没加DEBUG调试部分,而这样的问题,通过JLINK又看不出来,唉!咋办呢。
在上电,忽然发现,这台设备的通讯灯的闪烁间隔较长,这有两种可能,一是软件BUG,系统的某一部分任务占用了不该占用的时间,但是我的软件都是多任务并行处理的,而且每一个任务的时间片是不会超时的,难道出现任务死锁?但是为什么第二次上电,就正常了?似乎问题不在这儿。。。
忽然,想起来,哎呀!以前好像把这个设备做成了波特率自适应,但是通讯间隔,是由定时器决定的,定时器是不会糊弄人的,那就是锁频出了问题,难道还是晶振?
让工人换了一个晶振,好了,重复测试10次,每次间隔10分钟,好了!看来,自适应波特率,害死人呀! |