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.
PCB 上很少有 ADS1115有问题。 它们的行为都是相同的、因此我怀疑某个地方存在通信错误。
您可以看到、我会得到一个大约为1.2V (1.20003662221137)的值、这个值每次都非常精确。 有时还会使用较低的值、这种情况下的随机性会更高。
我曾尝试以860SPS 和64SPS 的不同数据速度运行、在读取数值前增加了转换延迟(最高30ms)。 延迟似乎改善了一点、但仍然远远没有达到好的效果。
我在不同 I2C 总线上的多个 ADS 上得到相同的误差。
不知道导致这种情况的原因是什么以及如何消除误差?
尊敬的 Pelle:
读数对应的寄存器配置是什么?
您使用的是连续模式还是单次模式?
此外、是否有可能使用逻辑分析仪提供数字通信的一些捕获结果、以找出潜在问题? 如果可能、还提供原理图。
此致、
天使
以下是读取错误的日志的一行:
bin (self.readRegister (self.config_REG))='0b10001011100011'、 bin (self.readRegister (self.conversion_REG))='0b1100100000000'
认为位字符串1100100000000对应于同一 I2C 总线上另一个器件的一个寄存器、并以较慢的测量间隔运行该寄存器可解决该问题。
尊敬的 Pelle:
您是否能够使用示波器/逻辑分析仪探测数字通信线路以查看数据线路上实际的内容?
这将有助于在数字通信出现问题时进行调试。
似乎很可能、因为您提到减慢速度有助于解决问题。
此外、使用了哪些寄存器配置?
此致、
天使