Modbus Read Coils (FC01)
Function Code 01
Request
This command is requesting the ON/OFF status of discrete coils # 20 to 56
from the slave device with address 17.
11: The SlaveID
(11 hex = address 17 )
01
: The Function Code 1 (read Coil Status)
0013
: The Data Address of the first coil to read.
(
0013 hex = 19 , + 1
offset = coil #20 )
0025: The total number
of coils requested. (
25
hex = 37, inputs 20 to 56 )
0E84
: The CRC (cyclic redundancy check) for error checking.
Response
11 01 05 CD6BB20E1B 45E6
11: The SlaveID
(11 hex = address 17 )
01
: The Function Code 1 (read Coil Status)
05
: The number of data bytes to follow (37 Coils / 8 bits per byte = 5 bytes)
CD
: Coils 27 - 20 (1100 1101)
6B
: Coils 35 - 28 (0110 1011)
B2
: Coils 43 - 36 (1011 0010)
0E
: Coils 51 - 44 (0000 1110)
1B
: 3 space holders & Coils 56 - 52 (
0001 1011)
45E6
: The CRC (cyclic redundancy check).
The more significant bits contain the higher coil variables. This shows that coil 36 is off (0) and 43 is on ( 1). Due to the number of coils requested, the last data field 1B contains the status of only 5 coils. The three most significant bits in this data field are filled in with zeroes.