
Serial Interface
6
Section 6.2 - Data Formats
Modbus holding registers are represented as 16 bit entities. The following encoding
is used for extended data items. Note that ‘byte 0’ will be the first byte received/
transmitted.
For data types that can be represented in 16 bits (Boolean, byte, char, int16 and
uint16) a single register is used.
For data types that require 32 bits two consecutive registers are used. The lower
number register will represent the most significant data. The 2nd register represents
the leas significant data.
Section 6.3 - Multiple Register Reads
When reading a dual register entity the lower order register should be used as the
requested ‘holding register’, with a request for a minimum of 2 registers. Internally
the entire entity is read and data is then built into a response packet.
The access can be split into 2 consecutive single register reads. When the lower
(base) register is accessed the entire 32 bit entity is read and the two most
significant bytes are returned. The following single register read must specify the
next consecutive register address. The two least significant bytes of the internally
buffered data used in the response.
Attempts to access the two least significant bytes without first reading the two most
significant bytes will result in an error response.
21