一个cp340带13块仪表,系统能正常工作,但偶尔出现其中一块仪表不能通讯(另外12块还通讯正常),出现问题的时间是无序的,可能3天1次,也可能1天1次。 在不通讯时,这块表在下一循环也不能接受到数据,如强制跳过故障点后,这块表下次又能正常工作了,出现故障并不是固定的仪表,并且对经常出现问题的表已经更换过.
我在程序中是严格按照轮巡的方式对13块仪表进行管理的,并且所用的逻辑判断也是相关标志(done正常完成等标志)进行发送\接受的控制;程序是这样的:先呼叫仪表等150ms,再接受仪表过程500ms,然后写仪表,执行一块仪表时间为1s,期间每步过程都加了逻辑判断; 还有其它方面不足的地方,请给做个提示
另在对不通讯的仪表重新上电后系统也可以恢复正常工作。
请各位大侠予帮助!