PIC24单片机的硬件CRC模块如何使用?

2020-02-09 09:26发布

如题,请了解的朋友指导一下,谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
longfeixue
2020-02-09 18:40
通过程序实验发现,当CRCXOR = 0x1021;,即多项式为 x16+x12+x5+1时,通过PIC24FJ64GA006的硬件CRC模块生成的CRC校验码,只符合
CRC-16/XMODEM       x16+x12+x5+1  的格式的值。与 这种格式 CRC-16/CCITT        x16+x12+x5+1  算出的值就不一样。
对于MODBUS协议,生成多项式  为x16 + x15 + x2 + 1,则CRCXOR寄存器应配置为0x8005,但是实验发现通过硬件CRC算出的值,于通过标准软件算出来的校验码值不一样。
通过上面两种情况配置实验结果的比较,似乎可能说明PIC24系列单片机内置的CRC模块的硬件实现方式是特殊的,它不能用于生成Modbus协议的校验码值。但不知是不是真的这样。

一周热门 更多>