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.

[参考译文] ADS125H02:转换后的数据来自 ADC 不正确。

Guru**** 2513185 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1029670/ads125h02-converted-data-is-not-coming-correct-from-the-adc

器件型号:ADS125H02

您好!

我能够读取和写入 ADC 的寄存器。

ADC 配置:

1) 1)将采样率从20sps 更改为100sps (默认值)

2) 2)将寄存器(10h)的输入多路复用器位更改为 AIN0至 AINCOM、如随附的图所示。

3) 3)在设计中启用外部基准、如所示。

 

我已将 PGA 增益设置为0.125,并将5.00v 设置为 ADC 的输入。我将得到 x"ecxxxx"十六进制值作为 ADC 转换输出。

我已附上了 Vivado ILA 原理图和波形的屏幕截图。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ramesh、

    您是否执行了 RREG 来确认 WREG 命令已生效? 如果它们由于任何原因而没有、您可能会得到无效数据。

    只需确认:这是您从 ADC 接收到的数据字节吗? 您是否启用了 STATUS0字节(下图中的字节为"1E")? 很难分辨、因为数据 CRC 在两种情况下都不匹配。

    如果启用了 STATUS0字节、则 DOUT 上的命令结构假设给定的命令为12 00 AA:

    • FF =字节1 =正确
    • 12 =回波字节=正确
    • 00 =回波字节2 =正确
    • AA = OUT CRC-2 =正确(对于12 00)
    • 1E = STATUS0字节=寄存器已解锁、无 CRC1错误、状态1或状态2中的错误、REF 警报、新数据就绪、时钟为外部
    • EC =数据 MSB
    • 93 =数据中间
    • EB =数据 LSB
    • FF =数据 CRC-4 =不正确(对于1E EC 93 EB、CRC-4应为07)

    如果 STATUS0字节被禁用、则 DOUT 上的命令结构假设给定的命令为12 00 AA:

    • FF =字节1 =正确
    • 12 =回波字节=正确
    • 00 =回波字节2 =正确
    • AA = OUT CRC-2 =正确(对于12 00)
    • 1E =数据 MSB
    • EC =数据中间
    • 93 =数据 LSB
    • EA =数据 CRC-3 =不正确(对于1E EC 93、CRC-4应为 EB)

    因此、无论在哪种情况下、CRC 似乎都是不正确的、除非我缺少一些东西。 这意味着 ADC 和 MCU 之间存在一些通信错误。 您可能会检查是否存在噪声或任何其他可能干扰数字通信线路的东西。

    请告诉我您尝试的内容以及测试结果。

    布莱恩