我需要使用32位数据的特定多项式来实现CRC-8。这是我从发射机得到的结果:
Data:12586966
CRC-8: 22(0x16)
Polynomial:0x97
Initial data:0x00
No final XOR calculation
检查传入数据等于其CRC-8的算法是什么?
如果将CRC附加到数据上,并且没有最终的XOR,那么重新计算的CRC将为零。
以十六进制表示,数据的4个字节为:00 C0 0F D6。 CRC8计算有效地附加了00以创建股息,并使用197作为除数来生成余数:{00 C0 0F D6 D6}%197 =16。然后从股息中“减去”余数,但在这种情况下,两个加法和减法是相同的,即XOR,因此CRC仅附加到数据:{00 C0 0F D6 16}。用附加的CRC(和隐含的附加00)重复该过程,{00 C0 0F D6 D6 16 00}%197 = 00。