ST意法半导体
直播中

而无返还

9年用户 1320经验值
擅长:光电显示
私信 关注
[问答]

如何用04C11DB7多项式去计算CRC32呢?

你好,
我正在用不同的方法用 04C11DB7 多项式计算 CRC32:通过 python binascii.crc32(...),以及在 STM32G483 上使用 ST 嵌入式模块.
在诸如“0123456789”之类的基本字符串上,我从 python 库和网站获得了相同的 CRC,但不是来自 ST(python/web:2 793 719 750;ST:4 171 674 919)。

我通过 CubeMX 使用链接图片中的配置启用了 ST CRC,并在我的代码中调用它如下:

uint8 数据[] = “0123456789”;
uint32 crc = HAL_CRC_Calculate(&hcrc, (uint32*)data, 10u);

我尝试修改输出和 intput 数据反转,更改字符串及其大小,但我永远无法获得与始终相同的 python/web 相同的结果。我真的不明白这里会发生什么。
知道我哪里会出错吗?感谢您的时间。






回帖(1)

谢昌火

2022-12-27 11:28:34
感谢您的回答,我通过在 CubeMX 中进行更改并修改代码,设法从 ST 获得了与 CRC 相同的结果,如下所示:

uint32 crc = HAL_CRC_Calculate(&hcrc, (uint32*)data, 10u) * 0xFFFFFFFF -1uL ;

举报

更多回帖

发帖
×
20
完善资料,
赚取积分