我正在创建一个 CAN 总线工作台测试解决方案,它复制整个车辆以测试单个模块。我有许多消息需要 CRC 字节才能有效。消息采用 little-endian 字节顺序,CRC 值保存在字节 0 中。我收集了带有不断变化的 4 位活动计数器及其 CRC 字节的有效消息,希望有人能提供帮助。我尝试过 CRC reveng,但要么不知道正确使用它,要么无法找到多项式,因为它在搜索时显示“未找到模型”。
作为参考,我发现文档表明所使用的多项式是标准的 SAE J1850 CRC8 多项式 x^8 + x^4 + x^3 + x^2 + 1,CRC-ID 十进制为 166(声明为用于低字节)。我也尝试过使用此处提供的在线计算器:http : //www.sunshine2k.de/coding/javascript/crc/crc_js.html,但无法获得正确的结果。
如果有人可以提供一些帮助,我将不胜感激。我想帮助澄清正确的多项式以及任何其他相关参数。以下是捕获的值列表:
这是上面的文字版。为清楚起见,我已将字节 0 中的 CRC 值与消息的其余部分分开。
57 0000C0F0C1FFFF
0A 0100C0F0C1FFFF
ED 0200C0F0C1FFFF
B0 0300C0F0C1FFFF
3E 0400C0F0C1FFFF
63 0500C0F0C1FFFF
84 0600C0F0C1FFFF
D9 0700C0F0C1FFFF
85 0800C0F0C1FFFF
D8 0900C0F0C1FFFF
3F 0A00C0F0C1FFFF
62 0B00C0F0C1FFFF
EC 0C00C0F0C1FFFF
B1 0D00C0F0C1FFFF
56 0E00C0F0C1FFFF