http://www.lammertbies.nl/comm/info/crc-calculation.html
对于十六进制0x43的输入,CRC-16(poly 0x8005)为0xF141,如上述网站...
如何在下面的计算器中输入以获得相同的结果?
https://ghsi.de/CRC/index.php?Polynom=1000000000000101&Message=43
http://www.codeproject.com/Articles/19059/C-CCITT-CRC-Algorithm
在使用CRC8(poly 0xd5)的字节数组{0xee,0x01,0x13,0x00,0x06,0x1c,0x00,0x20,0x1d,0x00,0x00}的上述链接中,它返回226作为结果。
如何进行并将值插入以下网站?
输入0x43怎么样?如何使用CRC8(poly 0xd5)将其输入同一网站?
很抱歉,但我一直都在努力搞清楚这一点......在第11页之前使用以下链接研究CRC,我对CRC计算有一个粗略的想法。但是我发现在如何从上面提到的来源得到相同的结果时遇到了困难......
答案 0 :(得分:3)
对于CRC-16,使用this link并将多项式校正为x 16 项且输入字节反转,并读取CRC结果(828f)反转(f141) 。输入和输出需要反转,因为这是反映的CRC。见该CRC here的定义。
对于CRC-8,仅定义多项式是不够的。您还需要定义CRC是否被反映,CRC寄存器的初始值是什么,以及什么是异或 - 或者结果。有one in the catalogue with that polynomial,它没有被反映,初始值和最终xor为零。您可以use this online version针对该特定CRC获得0x37作为0x43的CRC。该版本提供226 decimal for your example sequence。