ecification
3.9.3.3 Read Holding Registers (Query using FC = 03H)
This query reads the contents of holding registers in the slave. Broadcast is not supported.
The basic query/response structures and examples of queries are shown below.
(1) Basic Query/Response Structures
[1] Query format
The query message specifies the address of the holding register (gateway register) from which to start reading data,
and the number of registers.
Data length of 1 holding register = 1 word = 2 bytes = 16 bits
Field name
RTU mode data
(8 bits)
Data length
(bytes)
Remarks
Header None -
Slave address 3F H 1 Fixed.
Function code 03 H 1
Starting address (upper) Arbitrary
Starting address (lower) Arbitrary
2
The address varies depending on the axis
arrangement.
Number of registers (upper) Arbitrary
Number of registers (lower) Arbitrary
2 Refer to the query list.
Error check CRC (16 bits) 2
Trailer None -
Total bytes 8
[2] Response format
Field name
RTU mode data
(8 bits)
Data length
(bytes)
Remarks
Header None -
Slave address 3F H 1 Fixed.
Function code 03 H 1
Data bytes Arbitrary 1
Number of registers specified in the query
format x 2
Data 1 (upper) Arbitrary
Data 1 (lower) Arbitrary
1 each for upper
and lower words
2
Data 2 (upper) Arbitrary
Data 2 (lower) Arbitrary
Same as above
Data corresponding to the data bytes (number
of specified registers x 2)
Error check CRC (16 bits) 2
Trailer None -
Total bytes