请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:ADS112U04 我正在编写一个驱动程序、以便从 ADS112U04循环读取多个通道、我对写入顺序 WREG/START 命令的通信时序限制有疑问。
在我的应用中、我将使用由 ADS112U04的 GPIO 线路控制的外部模拟多路复用器来扩展我可以读取的模拟通道数、并在单次转换自动数据读取模式下依次读取 ADC 通道数。 因此、在开始每次转换之前、我必须为外部多路复用器写入内部多路复用器寄存器和 GPIO 寄存器。
我的预期算法如下:
- 将 ADC 配置为单次转换、自动数据读取(因此每次发送启动时都会返回单次转换结果)。
- 对列表中的每个通道执行以下操作:
- 发送 WREG 命令以设置外部多路复用器的 GPIO 引脚
- 发送 WREG 命令以写入内部多路复用器寄存器、
- 发送 START 命令
- 等待数据转换结果返回。 到达时、对下一个模拟通道重复步骤2。
- 在频道列表的末尾、从频道列表顶部的步骤2重复。
问题如下:
- 我可以在连续流中发送多个 WREG 命令、但它们之间没有同步字(序列开始时只有一个同步)、还是每个命令前面都有自己的同步字?
- WREG 命令之间是否有必要的最小延迟以避免 ADC 中的命令超限? (请注意、我没有严格违反半双工通信限制、因为只有最终命令返回数据)
- 序列中的最后一条 WREG 命令与触发转换的 START 命令之间是否存在最小必要延迟?
谢谢、
Steve Hersey