但是这次遇到的问题是现场干扰比较大,OPC通讯过几个小时就会出现一次中断,而OPC服务器自身的错误处理又缺乏资料,没搞懂,所以编写了一个Modbus串口通讯程序。
第一步,初始化串口,检测串口状态,如果通讯没建立则进入复位程序
第二步,读取离散量和寄存器,如果成功则进入写寄存器程序,不成功进入复位程序
第三步,写离散量和寄存器,如果成功回到杜寄存器,不成功进入复位程序
第四步,复位程序,先关闭串口,然后重新初始化串口
这个程序在出现错误的时候,会不停关闭串口重新打开串口,把串口线拔掉再插上也可以自己恢复通讯
附件:Modbus通讯.7z
[本地下载]最后修改:2019/8/20 15:02:53