请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:LMP90080 主题中讨论的其他器件: LMP90100、 LMP90099、LMP90098、 LMP90097、LMP90079、 LMP90078、 LMP90077、
工具与软件:
您好!
我正在尝试使用 CRC 来确保 LMP90080上数据的完整性、但我的外部计算值与 ADC 提供的 CRC 值不匹配。
可能是什么原因?
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.
工具与软件:
您好!
我正在尝试使用 CRC 来确保 LMP90080上数据的完整性、但我的外部计算值与 ADC 提供的 CRC 值不匹配。
可能是什么原因?
您好!
LMP90080是16位 ADC、转换数据存储在寄存器地址0x1A 和0x1B 中。 地址0x1C 为 LMP90100系列器件保留、LMP90100系列器件是该器件的24位 ADC 版本:
不过、LMP90080上的 CRC 计算使用与24位器件相同的协议、并在所有0x1A、0x1B 和0x1C 上执行 CRC。
启用 CRC 后(通过对 SPI_CRC_CN 字段、寄存器地址0x13进行写入)、应在同一 SPI 帧中同时读取寄存器0x1A (数据 MSB)、0x1B (数据 LSB)、0x1C 和0x1D (存储 CRC 值的寄存器 SPI_CRC_DAT)。
CRC 多项式为 x^8 + x^5 + x^4 + 1。 SPI_CRC_DAT 寄存器的复位值为零、最终值在发出之前进行补数。
示例 CRC 计算:
此致、
天使