Chapter 12 Description of Parameter Settings
MS300
(High Speed Model)
12-09-7
RTU mode:
CRC (Cyclical Redundancy Check) is calculated by the following steps:
Step 1:
Load a 16-bit register (called CRC register) with FFFFH.
Step 2:
Exclusive OR the first 8-bit byte of the command message with the low order byte of the
16-bit CRC register, putting the result in the CRC register.
Step 3:
Examine the LSB of CRC register.
Step 4:
If the LSB of CRC register is 0, shift the CRC register one bit to the right with MSB zero
filling, then repeat step 3. If the LSB of CRC register is 1, shift the CRC register one bit to
the right with MSB zero filling, Exclusive OR the CRC register with the polynomial value
A001H, then repeat step 3.
Step 5:
Repeat step 3 and 4 until eight shifts have been performed. When this is done, a
complete 8-bit byte will have been processed.
Step 6:
Repeat step 2 to 5 for the next 8-bit byte of the command message. Continue doing this
until all bytes have been processed. The final contents of the CRC register are the CRC
value. When transmitting the CRC value in the message, the upper and lower bytes of
the CRC value must be swapped, i.e. the lower order byte will be transmitted first.
The following is an example of CRC generation using C language. The function takes two
arguments:
Unsigned char* data
a pointer to the message buffer
Unsigned char length
the quantity of bytes in the message buffer
The function returns the CRC value as a type of unsigned integer.
Unsigned int crc_chk(unsigned char* data, unsigned char length)
{
int j;
unsigned int reg_crc=0Xffff;
while(length--){
reg_crc ^= *data++;
for(j=0;j<8;j++){
if(reg_crc & 0x01){ /* LSB(b0)=1 */
reg_crc=(reg_crc>>1) ^ 0Xa001;
}else{
reg_crc=reg_crc >>1;
}
}
}
return
reg_crc;
//
return
register
CRC
}
Summary of Contents for VFD11AMS21AFSHA
Page 5: ...IV This page intentionally left blank...
Page 8: ...Chapter 1 Introduction MS300 High Speed Model 1 3 1 2 Model Name 1 3 Serial Number...
Page 20: ...Chapter 3 Installation MS300 High Speed Model 3 3...
Page 21: ...Chapter 3 Installation MS300 High Speed Model 3 4 This page intentionally left blank...
Page 24: ...Chapter 4 Wiring MS300 High Speed Model 4 3 4 1 Wiring...
Page 25: ...Chapter 4 Wiring MS300 High Speed Model 4 4 Figure 1...
Page 27: ...Chapter 4 Wiring MS300 High Speed Model 4 6 4 2 System Wiring Diagram...
Page 43: ...Chapter 6 Control Terminals MS300 High Speed Model 6 6 This page intentionally left blank...
Page 91: ...Chapter 8 Optional Cards MS300 High Speed Model 8 8 Frame F Fig 8 16...
Page 115: ...Chapter 9 Specification MS300 High Speed Model 9 10 This page intentionally left blank...
Page 123: ...Chapter 10 Digital Keypad MS300 High Speed Model 10 8 This page intentionally left blank...
Page 293: ...Chapter 13 Warning Codes MS300 High Speed Model 13 6 This page intentionally left blank...
Page 303: ...Chapter 14 Error Codes MS300 High Speed Model 14 10 This page intentionally left blank...