我正在尝试用传感器usimg 32位crc进行通信。我正在使用预制的32位crc表。如何实现错误检测代码?传感器使用标头0x93发送38字节的数据。 这里是你的答案,这是我项目的代码部分。
for aye=bytePullIdx:(crcIdx-1)
a = bitand(bitxor(byteBufferPtr(aye),bitshift(crc,-24)),hex2dec('FF'));
crc = bitxor(bitshift(crc,8),crcLookupTable2(a));
上面的byteBufferPtr即将发送消息(38bytes)crcLookupTable是crc polynom'04C11DB7'的预构建表。在计算crc后我检查是否(crc == byteBufferPtr(crcIdx)条件来获取数据。 这里有什么不对吗?因为我不能在这里找到合适的条件。我在crc表值中找不到正确的crc值。 谢谢。