10. easyE4 communication Connection to other devices
10.17 Modbus TCP
Read Holding Registers 0x03:
Function 0x03 reads internal registers (e.g., marker words in the easyE4) word by
word.
Function Code
1 byte
0x03 ;Read Holding Registers
Start address
2 byte
Must always be 1 less than the starting input you want
(zero-based)
Number of
registers
2 byte
1 to 125 (0x7D)
Tab. 139: Request-PDU
Response to the request being received
1. The starting address is analyzed (distributed among bytes 1 and 2)
a. Byte 1 = Hi; Byte 2 = Lo
2. The number of registers is analyzed (distributed among bytes 3 and 4)
a. Byte 3 = Hi; Byte 4 = Lo
3. The data words are read from the start of the (starting address) to (starting
address + number of registers)
A register corresponds, e.g., to one marker word
Function Code
1 byte
0x03 ;Read Holding Registers
Bye Count
1 byte
A value of
= 2 * n must always be entered here
Register values
n* 2 byte
value
Tab. 140: Response-PDU
n= Number of registers read
Preparation for sending the response
1. The registers read (marker words) are mapped to two bytes per register
2. There are a high byte and a low byte for each register (marker word)
Example
l
Register word Hi0x02
l
Register word Lo0x2B
l
Content of marker word 0x022B
3. The LSB within the byte is bit 0
Once the response is encoded, it is sent.
easyE402/24 MN050009ENEaton.com
793