Yaskawa GPD 515-G5 Modbus RTU User Manual
Page 35

The Message Format 6-15
CRC-16 Calculation Example:
A two byte message for a read-out of a
specified coil status is as follows.
The actual CRC calculation would look like
this:
CRCTMP
FLAG
1111 1111 1111 1111
Initial Value
0000 0010
Slave Address
1111 1111 1111 1101
Result of EX
OR
0111 1111 1111 1110
1
Shift #1
1010 0000 0000 0001
CRC-16
constant A001h
1101 1111 1111 1111
Result of EX
OR
0110 1111 1111 1111
1
Shift #2
1010 0000 0000 0001
CRC-16
constant A001h
1100 1111 1111 1110
Result of EX
OR
0110 0111 1111 1111
0
Shift #3
0011 0011 1111 1111
1
Shift #4
1010 0000 0000 0001
CRC-16
constant A001h
1001 0011 1111 1110
Result of EX
OR
0100 1001 1111 1111
0
Shift #5
0010 0100 1111 1111
1
Shift #6
1010 0000 0000 0001
CRC-16
constant A001h
1000 0100 1111 1110
Result of EX
OR
0100 0100 0111 1111
0
Shift #7
0010 0001 0011 1111
1
Shift #8
1010 0000 0000 0001
CRC-16 constant A001h
1000 0001 0011 1110
Result of EX
OR
0000 0111
Function Code
1000 0001 0011 1001
Result of EX
OR
0100 0000 1001 1100
1
Shift #1
1010 0000 0000 0001
CRC-16
constant A001h
1110 0000 1001 1101
Result of EX
OR
0111 0000 0100 1110
1
Shift #2
1010 0000 0000 0001
CRC-16
constant A001h
1101 0000 0100 1111
Result of EX
OR
0110 1000 0010 0111
1
Shift #3
1010 0000 0000 0001
CRC-16
constant A001h
1100 1000 0010 0110
Result of EX
OR
0110 0100 0001 0011
0
Shift #4
0011 0010 0000 1001
1
Shift #5
1010 0000 0000 0001
CRC-16
constant A001h
1001 0010 0000 1000
Result of EX
OR
0100 1001 0000 0100
0
Shift#6
0010 0100 1000 0010 0
Shift #7
0001 0010|0100 0001
0
Shift #8
1 2 4 1
0000 0010
0000 0111
Slave Address = 2
Function Code = 7
CRC-16
(Upper 8)
CRC-16
(Lower 8)