96 Modbus/TCP – Communication protocol
Register addressing
The address field of Modbus Requests for accessing Holding
registers is 16 bits. This allows the Modbus protocol to support
addressing of 65536 Holding registers.
Historically, Modbus client devices used 5-digit decimal addresses
from 40001 to 49999 to represent Holding register addresses.
5-digit decimal addressing limited to 9999 the number of holding
registers that could be addressed.
Modern Modbus client devices typically provide a means to access
the full range of 65536 Modbus Holding registers. One of these
methods is to use 6-digit decimal addresses from 400001 to
465536. This manual uses 6-digit decimal addressing to represent
Modbus Holding register addresses.
Modbus client devices that are limited to 5-digit decimal
addressing may still access registers 400001 to 409999 by using
5-digit decimal addresses 40001 to 49999. Registers 410000-
465536 are inaccessible to these clients.
Function codes
The adapter module supports the Modbus function codes shown
below.
Function
code
Name Description
03h Read Holding Registers Reads the contents of a
contiguous block of holding
registers in a server device.
06h Write Single Register Writes a single holding register in
a server device.
10h Write Multiple Registers Writes the contents of a
contiguous block of holding
registers in a server device.
17h Read/Write Multiple
Registers
Writes the contents of a
contiguous block of holding
registers in a server device, then
reads the contents of a
contiguous block of holding
registers (same or different than
those written) in a server device.