1-7
1.8.1:
Function
Code
23H
-
Read
Holding
Registers
Multiple
Times
This function allows a Master station to read the binary contents of holding registers (4X references)
in the slave multiple times. Broadcast is not supported.
The Master device sends a packet defining the starting register, quantity of registers to be read and
the repeat count. Registers are addressed starting at zero: registers 1-16 are addressed as 0-15.
Here is an example of a request to read registers 40108-40110 twice from slave device 17:
Field Name Example (Hex)
Slave Address 11
Function Code 23
Data Starting Address Hi 00
Data Starting Address Lo 6B
Number of Registers Hi 00
Number of Registers Lo 03
Repeat Count 02
Error Check (LRC or CRC) --
Function Code
The register data in the response message are packed as two bytes per register, with the binary
contents right justified within each byte. For each register, the first byte contains the high order bits
and the second contains the low order bits.
Data is scanned at the following maximum rates, depending on the repeat count:
Repeat Count RTU Framing ASCIIFraming
1 509 Registers 253 Registers
2 254 Registers 126 Registers
3 169 Registers 84 Registers
4 127 Registers 63 Registers
5 101 Registers 50 Registers
6 84 Registers 42 Registers
7 72 Registers 36 Registers
The response is returned when the data is completely assembled.