ModBus_RTU协议上有这么一段:<br /><br /><<1.使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。在网络波特率下多样的字符时间,这是最容易实现的(如下图的T1-T2-T3-T4所示)。传输的第一个域是设备地址。可以使用的传输字符是十六进制的0...9,A...F。网络设备不断侦测网络总线,包括停顿间隔时间内。当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的。在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束。一个新的消息可在此停顿后开始。<br /><br />2.整个消息帧必须作为一连续的流转输。如果在帧完成之前有超过1.5个字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设备将认为它是前一消息的延续。这将导致一个错误,因为在最后的CRC域的值不可能是正确的>><br /><br />问题:第一段说明了一帧信息的开始与结束是以大于3.5个字符的时间间隔来判断,但是第2段不太理解:前半句说一帧完成之前若超过1.5个字符的时间间隔接收设备判为一个新消息,而后半句又说一个新消息在小于3.5个字符的时间内接着前一个消息开始,接收的设备将认为它是前一消息的延续. 若一帧消息传送中出现了大于1.5个字符小于3.5个字符的时间间隔,接收设备该如何处理???<br />
|