Appendix A Modbus communication protocol
A.9 Modo salida CRC
La función de cálculo del valor de verificación de CRC escrita por el lenguaje
C es la siguiente:
unsigned int cal_crc_value (unsigned char *pval, unsigned char len)
{
unsigned int crc_value=0xFFFF;
unsigned int i;
while(len--)
{
crc_value ^= *pval++;
for(i=0; i<8; i++)
{
}
}
return(crc_value);
}
-
if(crc_value & 0x0001)
{
crc_value >>= 1;
crc_value ^= 0xA001;
}
else
{
crc_value >>= 1;
}
293