恭喜,你发布的帖子
发布于 2023-02-22 09:17:28
11楼
modbus的读写是跨周期执行的,程序执行一遍数据读写不会立即完成,串口的话就是单向通行,先发数据给从站,然后等待从站响应,所以不管块调用后执行的状态,程序都要先退出,在下个循环再去处理,用for next没问题,但是从站是一个一个返回数据的。所以正确的逻辑是,收发数据后先exit,标记上次执行的位置,进入查询程序的执行块状态,等到done或者error信号后,for继续往后执行,如此往复,不要期望for在一个循环里把所有设备轮询一遍
请填写推广理由:
分享
只看
楼主