【问题标题】:How is this crc calculated correctly?这个crc是如何正确计算的?
【发布时间】:2020-03-24 01:14:59
【问题描述】:

我正在寻求帮助。我通过 SPI (MAX22190) 使用的芯片指定:

CRC 多项式:x5 + x4 + x2 + x0

CRC 是使用用 5 位初始字 00111 填充的前 19 个数据位来计算的。

然后将 5 位 CRC 结果附加到原始数据位以创建 24 位 SPI 数据帧。

我用多个工具计算的CRC结果是:0x18

但是,芯片在此显示 CRC 错误。它预计:0x0F

谁能告诉我我的计算哪里出错了?

我的输入数据(19 个数据位)是:

19 位数据:

0x04 0x00 0x00

0000 0100 0000 0000 000

24 位,用初始化值填充:

0x38 0x20 0x00

0011 1000 0010 0000 0000 0000

=> 我发送的数据:0x38 0x20 0x18

=> 芯片预期的数据:0x38 0x20 0x0F

【问题讨论】:

    标签: embedded spi crc


    【解决方案1】:

    CRC 算法解释here。 我认为您的错误来自 00111 填充,必须在右侧而不是左侧填充。

    【讨论】:

    猜你喜欢
    • 2014-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-18
    • 1970-01-01
    • 1970-01-01
    • 2017-08-02
    • 1970-01-01
    相关资源
    最近更新 更多