我做了如下自由口通讯程序,调试正常后一直运行正常,可是PLC断电后却只能发送数据不能接收数据了,请问各位大侠有什么好的解决办法没有?请问我的程序哪里出现了问题,谢谢
图片说明:
最佳答案
看起来怪怪的程序,发送跟接收不是不能同时使用吗,为什么你还在主程序里同时调用了两个,虽然你有对smb87进行操作,但是完全可以靠发送完成中断后才来接收数据的~
提问者对于答案的评价:
我在主程序里面控制SM87.7,目的是可以执行下条发送和接收指令,通过调试基本能实现与设备的交互功能。但是由于中断没处理好,导致指令不能循环。还有如果采用此种方式人为控制接收控制字节,我后面用SM0.5来不断跟随设备状态时,产生了错误识别码,后来我用了字符中断发送,准确无误的接收了每个字符,也没有伴随误码产生,希望以后写自由口通讯程序的人注意!
专家置评
已阅,最佳答案正确。
自由口通信是半双工的,同一时刻只能执行一个通信任务。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc216264.html