我在连续转换模式下使用 ADC128。 我们在 I2C 线路上收到错误数据、并试图辨别其来源。 在执行读取操作时、我会查看从 I2C 线路上的噪声到寄存器的稳定性等各个方面。 我现在使用的逻辑是检查地址0x0C 上的寄存器以查看 ADC128是否正在转换、如果不是、我开始读取正在使用的寄存器、并 对给定的 ADC128地址进行多达5次读取。 我们得到的数据在很多时间内将为零、并且还会具有一些其他随机值的错误值。 我认为出现了零、表示寄存器地址在返回和读取禁用的寄存器时损坏、该寄存器为零;并且、其他数据从读取或 I2C 传输中损坏。 我可以看到、ADC128电压费时12.2ms、温度费时3.6ms、因此我正在查看40-80ms、ADC128处于忙状态。
我需要回答的问题是:
1) 1) 在连续转换模式下、什么条件会关闭下一个转换周期? 它是计时器还是执行读取触发它。
2) 2) 转换周期之间的时间长度是多少?
3) 3) 如果它由读取触发、是否只是该寄存器进行转换而不是其他寄存器安全地进行读取? (这没有任何意义、因为您只有一个忙位)
4) 4) 仅执行一次繁忙状态检查并执行5次读取寄存器是否正常、或者我是否需要在每次寄存器读取之前执行该操作、如果读取触发了转换周期、这会是一个问题?
5) 5) 如果在我完成对所有寄存器的读取之前触发转换周期、会发生什么情况?
谢谢。
托德·霍廷
阿克公司