我觉得你应该再仔细想想你的思路是不是有问题.你可以变通一下.如果你只要发送数据给下位机,你可以把读数据设为0,那它就只发不收了.相反如果你只要收,你就把发数据字节设0就行了.
还有 同时都要的时候,也就是说你既要发,也要收 你可以用M8123 做标志位,把你收到的数据立即转移出去, 这样你就不会把数据给覆盖掉了 ...!
多写两步程序,就能解决你的问题了...
内容的回复:呵呵,我试了,用M8123做标志位把接收的数据转移,不行的,还是会出现这样的情况,起初我也编了CRC的校验程序,通过这个去获取我想要的数据,但如果加了这个程序,接收的数据是错误的1、你把发送的时间设的长一点,
2、把发送和接收用标志位互锁。
3、我之前也遇到此类问题,发的时候前面的数发过去了,后面的没有变化。我后来把发送时间设长,后来解决了
内容的回复:有这样的例子 可以给我参考下吗?邮箱253773563@qq.com ,我的情况是后面接收的数据是PLC之前发送的和EVC返回的,都接收了如果有仪表数据返回的话说明通讯成功,至于数据凌乱的话就是发送接收机制有问题,如果是两块以上仪表的话注意一下终端电阻连接(遇到过,要不然只能通讯一块仪表)
内容的回复:你好,不知道具体的程序里面是如何实现的,能否发份这段的程序借鉴下,我的邮箱253773563@qq.com或者sequel2005@163.com,谢谢!