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.

[参考译文] ADS131A04:ADS131A04

Guru**** 2390785 points
Other Parts Discussed in Thread: ADS131A04

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1461234/ads131a04-ads131a04

器件型号:ADS131A04

工具与软件:

在链模式下配置 ADS131A04数据转换器时遇到一个奇怪的问题、我觉得这值得分享。

我的配置:

两个 ADS131A04 ADC 共享同一条 SPI_CLK、MISO、MOSI、DRDY 线路。

第一个 ADS131A04配置为 M0设置为 IOVDD、异步中断模式。 M1和 M2接地。

第二个 ADS131A04配置为 M0悬空、同步从模式。 CS 连接到第一个 ADC 的 DONE 线路。 M1和 M2接地。

我有一个在16MHz 上运行的函数发生器、为两个器件提供通用时钟输入线路(引脚25)、用于测试。 该时钟信号始终亮起、并将在最终设计中使用。

所有寄存器的配置都正常工作。 我能够正确写入和读取每个寄存器。 我使用的是24位模式、因此我的 MCU 主站通过 SPI 发送6字节数据包。 发送前3个字节后、第一个 ADC 将 DONE 线路拉至低电平、以选择第二个 ADC。 这些都可以正常工作、正如数据表所述。 我将在没有任何 CRC 或汉明的动态帧模式下使用这些器件。

我写入 ADC_ENA 寄存器的那一刻、数据包的大小就发生变化。 通过反复试错、我发现必须为第一个 ADC 中启用的每个通道提供 NULL 字节。 如果我启用所有4个通道、这意味着在我发送启用第二个 ADC 的命令之前有12个 NULL 字节。 后续的唤醒和锁定命令也是如此。 从编程侧来看、一旦在第一个 ADC 上启用通道、传出写入寄存器命令就会不同。

这在数据表或附录中的任何地方都有描述吗? 这是一个非常不寻常的功能或操作方面、值得标注。

Rgds、

Gary

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

    您好、 Gary、

    我会检查详细信息并尽快与您联系。

    BR、

    戴尔

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

    您好、Gary、

    感谢您的耐心。

    ADS131A04数据表指出"要向特定器件发送命令、请发送器件的相应命令 在选择该设备时 的 SCLK/Nulls、然后为  下一个 ADC 发送 SCLK/Nulls、如 ADS131A04数据表中的以下时序所示:

    BR、

    戴尔

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

    尊敬的 Dale:

    感谢您的答复。   

    器件最初受电时、所有 ADC 通道都被禁用。   

    用户 需要在启用 ADC 通道之前设置时钟寄存器和其他系统寄存器。   在这种情况下、为命令选择从器件不需要使用 NULL 字节。

    当第一个 ADC 通道启用时、即使器件已锁定或处于待机状态、 您也需要 NULL 字节来访问第二个 ADC。

    只用一句话来说明这种差异对用户来说将是非常有帮助的。   到目前为止、数据表中的文本模糊以及时序图、需要拼接才能理解这种行为。

    此致!

    Gary

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

    您好、Gary、

    感谢您的建议。 我会告知系统工程师、我们将说明是否有需要更改以更新数据表。

    BR、

    戴尔