工具/软件:
嗨、jagadish、
初始值是否会从多项式更改为多项式?
例如:多项式类型:SAEJ1850 CRC -> 初始值:0x00
多项式类型:H2F Autosar 4.0 ->初始值:0xFF
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:
嗨、jagadish、
初始值是否会从多项式更改为多项式?
例如:多项式类型:SAEJ1850 CRC -> 初始值:0x00
多项式类型:H2F Autosar 4.0 ->初始值:0xFF
尊敬的 Sravya:
初始值是否会从多项式更改为多项式?
例如:多项式类型:SAEJ1850 CRC -> 初始值:0x00
多项式类型:H2F Autosar 4.0 ->初始值:0xFF
根据我的理解、该控制器的默认初始值是 0x00。 不过、我们可以通过软件轻松控制它。
例如:
如果初始值为 0x00、数据为 0x23、则生成的 CRC 是 0xA0 吗?
如果初始值为 0xFF、数据为 0x23、则生成的 CRC 是 0x64 吗?
若要获得该 0x64、另一种方法是、在查找表中验证可得出 CRC 为 0xFF 的数据值:
您可以看到字节 126 (0x7E) 可以给出 0xFF 作为 CRC、对吧?
因此、我们可以将此 0x7E 附加到实际数据、只使用初始值作为 0x00、这将产生与 0xFF 相同的结果。 请验证下图一次:
这是因为、如果您在 CRC 生成过程中将 0xFF 保留为初始值、则意味着 (0xFF) 实际上会与数据的第一个字节进行异或运算、然后进行多项式除法、因此间接发生这种情况、我们在数据中包含 0x7E、这意味着 0x7E 的 CRC 只能是 0xFF、 这意味着 0xFF CRC 将由我们的第一个字节 0x7E 生成、然后它将与我们的下一个字节进行异或运算、然后处理将继续。
--
此致、
Jagadish。
尊敬的 Sravya:
在我的测试中、我发现 CRC-32 位的初始值和最终值已经 0xFFFFFFFF。
有关更多详细信息、请再次参阅下面的其他主题:
(+) AM2634:MCRC 代码中的问题 — 基于 Arm 的微控制器论坛 — 基于 Arm 的微控制器 — TI E2E 支持论坛
--
此致、
Jagadish。