您好:
我们有一个原型、使用 ADC1113读取线性电位器。 电位器采用非常简单的分压器配置、如下所示、测量范围为 AIN0至 AIN1 (或 AIN0至 GND):
我们的系统正在运行、并且能够通过 I2C 从 MCU 读取。 但是、我们在两个不同的原型板上遇到以下情况:1.65V (电位计一侧的完整范围)时、我们从计数寄存器中读取值5780。 我们的理解是、ADS1113具有2.048V 的固定 FSR 和16位。 考虑到这一点、我们得到的计数与实际值不符。
I2C 配置
我们将值0xC443写入配置寄存器(数据表中为9.6.3)。 我们还尝试了0x8443。 我们在路上收到了 ACK、表明器件已正确接收到 ACK。
然后、我们从转换寄存器读取16位。 我们按照以下方式来组织该值、知道接收到的第一个字节是 MSB、后跟 LSB
* val =(uint16_t)((data[0]<< 8)+ data[1]);
这样、我们将收到以下值、并通过 Fluke 87III 读数与万用表读数配合使用:
电位计低端:计数:5662 (测量值为1.374V)
电位计高端:计数:702测量值0.243V
硬件
我们将从以下布局图中的引脚2和3进行测量。 如您所见、布局一点也不复杂、我认为这不是布局问题。 它还可在两个不同的电路板中重现。 我还检查了 ADC1113是否是已安装的芯片、其标记为 N6J、根据数据表 PG 45、它确实对应于此芯片。
示波器上的测量确实显示了一些噪声、但不足以确定1.3V 至约~5700计数之间计数的重要意义。
我们在寻找根本原因时遇到困难,因此我们非常感谢就此问题提供的任何指导。
谢谢!