uint16_t modbus_crc16(uint8_t *data, uint16_t length)
{
uint16_t crc = 0xffff;
u8 t = 0;
uint16_t R = 0xa001;
while(length){
crc = crc ^ *data++;
for(int a=0; a<8; ){
t = crc % 2;
crc = crc / 2;
a++;
if(t == 1){
crc = crc ^ R;
}
}
length--;
}
return crc;
}
Modbus CRC
最新推荐文章于 2024-07-13 02:28:43 发布