5-42
5.3.3.3 CRC-16 calculation example
The following is an example of read data that is sent:
Station number: 1, FC = 03, function code P49 (P = code 03, 49 = 31 Hex), read data size: 20 items,
G.P (generating polynomial): 1010 0000 0000 0001.
Address FC Function code Read data size
01 03 03 31 00 14
N PROCESS 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Flag
1 Initial data R="FFFF" 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1st data byte 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
3 CRC = No.1 X or No.2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
4 Shift >> 2 (up to flag=1) 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
5 CRC = No.4 X or G.P 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0
6 Shift >> 2 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1
7 CRC = No.6 X or G.P 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0
8 Shift >> 2 0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1
9 CRC = No.8 X or G.P 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0
10 Shift >> 2 (8 shift end) 0 0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1
11 CRC = No.10 X or G.P 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0
12 2nd data byte 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
13 CRC = No.11 X or No.12 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1
14 Shift >> 1 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1
15 CRC = No.14 X or G.P 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1
16 Shift >> 1 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1
17 CRC = No.16 X or G.P 1 1 0 1 0 0 0 0 0 0 0 1 1 1 1 0
18 Shift >> 2 0 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 1
19 CRC = No.18 X or G.P 1 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0
20 Shift >> 2 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 1 1
21 CRC = No.20 X or G.P 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0
22 Shift >> 2 (8 shift end) 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0
23 3rd data byte 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
24 CRC = No.22 X or No.23 0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 1
25 Shift >> 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 1
26 CRC = No.25 X or G.P 1 0 1 1 0 0 0 0 1 0 1 0 0 0 0 0
27 Shift >> 6 0 0 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1
28 CRC = No.27 X or G.P 1 0 1 0 0 0 1 0 1 1 0 0 0 0 1 1
29 Shift >> 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 0 1 1
30 CRC = No.29 X or G.P 1 1 1 1 0 0 0 1 0 1 1 0 0 0 0 0
31 4th data byte 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1
32 CRC = No.30 X or No.31 1 1 1 1 0 0 0 1 0 1 0 1 0 0 0 1
33 Shift >> 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 0 0 1
34 CRC = No.33 X or G.P 1 1 0 1 1 0 0 0 1 0 1 0 1 0 0 1