public static int getCrc(byte[] data){
int CRC = 0;
int genPoly = 0x8C;
for(int i = 0; i < data.length; i++){
CRC ^= data[i];
// 保证 CRC 余码输出为 1 字节
CRC &= 0xff;
for(int j = 0; j < 8; j++){
if((CRC & 0x01) != 0){
CRC = (CRC >> 1) ^ genPoly;
CRC &= 0xff;//保证CRC余码输出为1字节。
}else{
CRC >>= 1;
}
}
}
// 保证CRC余码输出为1字节
CRC &= 0xff;
return CRC;
}
java计算CRC8循环校验码,亲测可用!
最新推荐文章于 2023-04-26 14:42:18 发布