crc校验
多项式为 :X7+X6+X5+X2+1
unsigned char crccalc(unsigned char *data, int datalen)
{
unsigned int i;
unsigned char j;
unsigned char crc = 0x00;
for (i = 0; i < datalen; i++)
{
crc ^= *data;
data++;
for (j = 8; j > 0; j--)
{
if (crc & 0x80)
{
crc <<= 1;
crc ^= 0xe5;
}
else
{
crc <<= 1;
}
}
}
return crc;
}