恭喜,你发布的帖子
发布于 2017-09-12 12:43:30
11楼
额,Modbus通讯字节是最小单位,那么DB里面直接对应字节指针偏移不就正确了?为什么还要考虑其他乱七八糟的?4个字节顺序不一致的话,通讯时交换一下就是了。
就像老外写DB是用Real0..Real4..Real8,而不是Real0..Real1..Real2,这样就很直观的知道变量所在的字节位置而不用老是脑补字节位置。
至于通讯DB数据在主程序一个扫描周期内不一致的问题,那不是更简单么?直接在主程序扫描开始时获取一次所有通讯DB数据到另一个映射DB中,而不是直接使用通讯的DB;主程序最后再把映射DB写入通讯DB,这样一致性就不会造成影响了。
请填写推广理由:
分享
只看
楼主