|
unsigned int CRC16(unsigned char DataLen)
{
unsigned char x;
unsigned char i;
unsigned int CRC;
CRC=0xFFFF; //!
for(i=0;i for(x=0;x<8;x++) return CRC; void UpdateCRC16(byte c) {
E-mail:
info@telesys.ru
CRC^=Uart_buf[i];
{
if(CRC&1)
{
CRC=(CRC >> 1);
CRC=(CRC ^ 0xA001);
}
else CRC=(CRC >> 1);
}
}
}
typedef unsigned char byte;byte crc16h, crc16l;
c ^= crc16h;
c ^= (c >> 4);
crc16h = crc16l ^ (c << 4) ^ (c >> 3);
crc16l = c ^ (c << 5);
}
Ответы