ADS1115在模拟信号输入为0时,数字量输出不为0,而是0XFF,255
Decapton Wang:
模拟信号从哪里来的?要是从运放来的,建议查一下前端运放的输出offset。
Harson:
回复 Decapton Wang:
请参考ADS1115手册page14页的编码规则,零输入时候理论为0x0000, 0xFFFF说明有1LSB的误差,应该是正常的。
这是因为使用的是二进制补码表示的。
Decapton Wang:
回复 Harson:
他说的“而是0XFF,255”意思貌似是0x00FF,换算成十进制是255。如果是这样,那看上去就不是编码规则的问题了。
SR102738:
回复 Decapton Wang:
我直接将模拟输入通道接地,读到的数据值也不是零,而且数据不稳定,老是在65535和255之间变化。
SR102738:
回复 Decapton Wang:
还有ADS1115的内部基准是2.048V吗?
Decapton Wang:
回复 SR102738:
1. 如果读到的值只是65535和255这两个数,那可以按照手册图30检查一下I2C程序,看看是不是多读了一个0x00,少读了一个0xFF。
2. 如果读到的值是65535和0~255中的某个数,建议检查一下前端电路的offset和noise是不是过大了。
Decapton Wang:
回复 SR102738:
至于内部的电压基准,手册上并没有详细说明。不过这应该并不影响你的应用,你可以通过表3的PGA增益来确定你的FS范围;通过表4来计算二进制输出码和输入信号的对应关系。