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.

[参考译文] ADS1015:连续读取所有四个通道、最佳实践?

Guru**** 2516170 points
Other Parts Discussed in Thread: ADS1015, ADS7142

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/952761/ads1015-reading-from-all-four-channels-continuously-best-practices

器件型号:ADS1015
主题中讨论的其他器件: ADS7142

我正在从低功耗器件上的四通道传感器实时获取数据。  我开发了一个有效的 I2C 协议、该协议针对每次单次转换手动对 ADS1015配置寄存器进行一次编程。  首先、我配置为读取 AIN0通道。  然后、在我读取 AIN0结果后、我将配置为读取 AIN1等、直到我循环返回。  这种方法的一个优点是、如果需要、我可以更改每个通道的放大器增益。  

但我正在尝试在模拟前置放大器级中选择更好的增益电平、这样我就不必更改每个通道的增益。  如果我可以在数据采集开始时传输一个配置、在所有四个通道之间共享、然后重复读取转换寄存器、那么这将节省大量的功耗和 I2C 总线带宽。  在3300个样本/秒的最高速度下、我计算出、仅读取转换寄存器将消耗100K 位/秒的 I2C 带宽一半。  以相同的速率写入配置将占用另一半的时间。

就绪模式允许配置在1、2或4个转换完成后在 READY / ALERT 引脚上发出信号。  但是、显然只有一个寄存器保存转换结果。  我本想可以通过一种方法对四个读数进行排序、然后将它们作为一个组读回。  我缺少什么吗?  我是否每次要更改通道时都必须传输新配置?  如果不累加多个读数、延迟2或4次转换的就绪信号有什么用途?

感谢你的帮助。

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

    尊敬的 John:

    如果您更改多路复用器通道、则必须写入新配置、无法解决该问题。  我建议将 I2C 通信增加400kHz。  另一个注意事项是写入配置、然后再次写入以将指针设置到转换寄存器。  这也应增加捕获全部四个输入的时间。

    对于警报/就绪功能、有两个用途。  一种方法是严格地设置 ADC、以便在转换准备就绪时、警报/就绪引脚向您发出信号以读取结果。  通过这种方式使用就绪功能时、您应该将设置为1次转换、以便每次转换都被读取。

    警报的目的是检查您的传感器输入是否在特定的工作区域内。  在这种情况下、您可能不希望由于噪音而收到警报、因此在发出警报之前、您可能需要等待另一个或两个转换以显示重复信息。  因此、您对器件运行的理解不正确。  如果您需要更像扫描功能的器件、则可能需要查看其他器件、例如 ADS7142。

    此致、

    Bob B