Explanation of function codes

ReadCoil Status [01h]:
This function reads the status (ON/OFF) of selected coils. An example follows below.
xRead intelligent input terminals [1] to [5] of an inverter having a slave address “8.”
xThis example assumes the intelligent input terminals have terminal states listed
below.
Item Data
Intelligent input
terminal [1] [2] [3] [4] [5]
Coil number 7 8 9 10 11
Coil Status ON OFF ON OFF OFF
Query: Response:
No. Field Name Example
(Hex) No. FieldName Example
(Hex)
1 Slave address *1 08 1 Slave address 08
2 Function code 01 2 Function code 01
3 Coil start address *4
(high order)
00 3 Data size (in bytes) 01
4 Coil start address *4
(low order)
06 4 Coil data *3 05
5 Number of coils
(high order *2)
00 5 CRC-16 (high order) 92
6 Number of coils
(low order *2)
05 6 CRC-16 (low order) 17
7 CRC-16 (high order) 1C
8 CRC-16 (low order) 91
Note1: Broadcasting is disabled.
Note2: When 0 or more than 31 is specified as a number of coils, error code “03h” is
returned.
Note3: Data is transferred by the specified number of data bytes (data size).
Note4: The PDU Coils are addressed starting at zero. Therefore coils numbered 1-31
are addressed as 0-30. Coil address value (transmitted on Modbus line) is 1
less than the Coil Number.
xThe data set in the response shows terminal state of coils 7 to 14.
xData “05h = 00000101b” indicates the following assuming coil 7 is the LSB.
Item Data
Coil Number 14 13 12 11 10 9 8 7
Coil Status OFF OFF OFF OFF OFF ON OFF ON
xWhen a read coil is outside the defined coils, the final coil data to be transmitted
contains “0“as the status of the coil outside the range.
xWhen the Read Coil Status command cannot be executed normally, see the exception
response.

B10

Appendix B
B 10
Appendix B