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.

[参考译文] ADS112U04:链接 WREG 命令以编程方式一次读取多个通道。 时序和同步限制?

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/921317/ads112u04-chaining-wreg-commands-to-programmatically-read-multiple-channels-one-at-a-time-timing-and-sync-limitations

器件型号:ADS112U04

我正在编写一个驱动程序、以便从 ADS112U04循环读取多个通道、我对写入顺序 WREG/START 命令的通信时序限制有疑问。

在我的应用中、我将使用由 ADS112U04的 GPIO 线路控制的外部模拟多路复用器来扩展我可以读取的模拟通道数、并在单次转换自动数据读取模式下依次读取 ADC 通道数。 因此、在开始每次转换之前、我必须为外部多路复用器写入内部多路复用器寄存器和 GPIO 寄存器。

我的预期算法如下:  

  1. 将 ADC 配置为单次转换、自动数据读取(因此每次发送启动时都会返回单次转换结果)。
  2. 对列表中的每个通道执行以下操作:
    1. 发送 WREG 命令以设置外部多路复用器的 GPIO 引脚
    2. 发送 WREG 命令以写入内部多路复用器寄存器、
    3. 发送 START 命令
    4. 等待数据转换结果返回。 到达时、对下一个模拟通道重复步骤2。

  3. 在频道列表的末尾、从频道列表顶部的步骤2重复。

问题如下:

  • 我可以在连续流中发送多个 WREG 命令、但它们之间没有同步字(序列开始时只有一个同步)、还是每个命令前面都有自己的同步字?
  • WREG 命令之间是否有必要的最小延迟以避免 ADC 中的命令超限? (请注意、我没有严格违反半双工通信限制、因为只有最终命令返回数据)
  •  序列中的最后一条 WREG 命令与触发转换的 START 命令之间是否存在最小必要延迟?

谢谢、

Steve Hersey

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

    您好、Steve、

    欢迎来到 E2E 论坛!

    我的回答如下:

    问题如下:

    • 我可以在连续流中发送多个 WREG 命令、但它们之间没有同步字(序列开始时只有一个同步)、还是每个命令前面都有自己的同步字? [BOB]每个命令都必须在同步之前。  您可以快速发送命令,但每个命令必须在同步之前。
    • WREG 命令之间是否有必要的最小延迟以避免 ADC 中的命令超限? (请注意、我完全没有违反半双工通信限制、因为只有最终命令返回数据)[Bob]不、您不需要在命令之间延迟。
    •  序列中的最后一条 WREG 命令与触发转换的 START 命令之间是否存在最小必要延迟? [BOB]无需额外延迟。

    此致、

    Bob B