我需要使用32位数据的特定多项式来实现CRC-8。这是我从发送器得到的结果:
Data:12586966
CRC-8: 22(0x16)
Polynomial:0x97
Initial data:0x00
No final XOR calculation检查传入数据是否等于其CRC-8的算法是什么?
发布于 2020-03-05 05:53:19
如果CRC被附加到数据上,并且没有最终的XOR,则重新计算的CRC将为零。
在十六进制中,4个字节的数据是: 00 C0 0F D6。CRC8计算实际上附加了一个00来创建一个被除数,并使用197作为除数来生成余数:{00 CRC0F D6 D6} % 197 = 16。然后从被除数中“减去”余数,但在这种情况下,加法和减法都是相同的,即异或,因此只将C0追加到数据:{00 CRC0F D6 16}。使用附加的CRC (和隐含的附加的00)重复该过程,{00 C0 0F D6 D6 16 00} % 197 = 00。
https://stackoverflow.com/questions/60509375
复制相似问题