本帖最后由 galaxy 于 2023-8-24 22:44 编辑
使用宏指令 获取控件数据
GetData(ZA, "MODBUS RTU", 4x, 1#16, 1)//读取 MODBUS 1#站数据,1个字长 设备A
GetData(ZB, "MODBUS RTU", 4x, 2#16, 1)//读取 MODBUS 2#站数据,1个字长 设备B
SetData(ZALL, "MODBUS RTU", 4x, 1#17, 1) //下发数据
设备A控件4x-1#16 由于设备正常挂载,通信正常,那么GetData数据,读取正常。但是设备B 4x-2#16控件,由于设备没有正常挂载,导致这个控件在运行时看不见,那么使用GetData,程序貌似一直停止在读取这一步,宏指令后面的程序,SetData不能正常运行,执行不到这一步。
请问专家
1. 宏指令中有没有判断这个控件是否存在或者485通信成功的标志之类?
2. 如果不能判断,那么GetData 获取不到数据,程序卡住,这个是不是GetData函数的一个bug,请问怎么解决? |