C
I've been reading the "Modicon Modbus Protocol Reference Guide", PI-MBUS-300 Rev. J that I downloaded off of MODBUS.ORG. And have come across some conflicting information, and need it clarified. In Chapter 1, Section "RTU Framing", Page 9, there are two paragraphs that talk about timing. See below.
---
The entire message frame must be transmitted as a continuous stream. If a silent interval of more then 1.5 character times occurs before completion of the frame, the receiving device flushes the incomplete message and assumes that the next byte will be the address field of a new message.
Similarly, if a new message begins earlier than 3.5 character times following a previous message, the receiving device will consider it a continuation of the previous message. This will set an error, as the value in the final CRC field will not be valid for the combined messages. A typical message from is shown below.
---
So in the first paragraph, if I have a blank spot in the data stream of 1.5 character times, I throw out what I have, and consider the next byte the start of a new message.
But in the second paragraph, if the next byte comes before the 3.5 character times, I consider it part of the message I just threw out in the previous paragraph?
I'm so confused... What do other people do?
Chris Robson
---
The entire message frame must be transmitted as a continuous stream. If a silent interval of more then 1.5 character times occurs before completion of the frame, the receiving device flushes the incomplete message and assumes that the next byte will be the address field of a new message.
Similarly, if a new message begins earlier than 3.5 character times following a previous message, the receiving device will consider it a continuation of the previous message. This will set an error, as the value in the final CRC field will not be valid for the combined messages. A typical message from is shown below.
---
So in the first paragraph, if I have a blank spot in the data stream of 1.5 character times, I throw out what I have, and consider the next byte the start of a new message.
But in the second paragraph, if the next byte comes before the 3.5 character times, I consider it part of the message I just threw out in the previous paragraph?
I'm so confused... What do other people do?
Chris Robson