发表于:2009-12-23 10:31:34
5楼
MODBUS协议规定消息帧结构为“T1-T2-T3-T4 8Bit 8Bit n个8Bit 16Bit T1-T2-T3-T4”,整个消息帧必须作为一连续的流转输。如果在帧完成之前有超过1.5个字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设备将认为它是前一消息的延续。这将导致一个错误,因为在最后的CRC域的值不可能是正确的。针对台达PLC,只需要在通讯发送接收完毕标志位M1127后加一个延时,例如延时20ms,然后再复位M1127,接着进行下一帧通讯,就OK了!