TI中文支持网
TI专业的中文技术问题搜集分享网站

ADS1115 把AIN0与AIN1设置成差分输入,当AIN0比AIN1电压高的时候,能正常读出变化,但是AIN1比AIN0电压高的时候,就一直是FFFF

ADS1115 把AIN0与AIN1设置成差分输入,当AIN0比AIN1电压高的时候,能正常读出变化,但是AIN1比AIN0电压高的时候,就一直是FFFF,

不管AIN1比AIN0的电压高多少,都是FFFF?是什么原因

Charles Lin:

你好,

建议把原理图贴出来,便于分析。

LIN ZOU:

回复 Charles Lin:

AN0 AN1 设置成差分,AN0比AIN1电压高的时候,读出的AD值是正常的

但是AN1比AN0电压高的时候,无论电压高多少,读出来都是FFFF

LIN ZOU:

回复 Charles Lin:

我程序Config Register配置寄存器设置如下图所示:

除了以上设置,还需要设置其他地方嘛?

Charles Lin:

回复 LIN ZOU:

你好,

原理图并没有问题。可否确认下以下几个问题

第一,确认在加入不同电压值时,在ADC输入端测到的电压值和给定电压值一致,可以利用电压表或者万用表检测;

第二,当AN0比AN1电压高时,读出来的AD值正常是指转换出来的电压值与实际电压值相等吗?

第三,读出来的码值一直是FFFF,说明是一个接近0的负电压,如果ADC读取数据的程序可用的话,还是着重在硬件上找原因。

LIN ZOU:

回复 Charles Lin:

第一:是一致的,我拿电压表量在AN端口量过,和输入端

第二:ADS1115供电是5V   ,使用+-6.144 FGA , 输入AN0=5V左右,AN1=0左右,AD值=26679,计算出来的电压= 5V 是对的,

第三:正常情况下,AN1比AN0电压高的时,读出的AD值应该是在0xFFFF 到 0x8000 变化,

           现在固定AIN0 给 0V ,AN1给 0V~5V 的之间的电压,读出的AD值永远是0xFFFF, 根本不会变化

          程序上不可能有问题,我在其他端口上轮询单端输入给信号,读出来的数据都是正确的,

         包括把AN0 和 AN1 改成 单端输入,读出都是正常的,

       说明电路有没用问题,

      把AN0 和 AN1 改成 差分模式,就是AN1检测不到,永远是 FFFF

我还了两片ADS1115还是一样的问题,是不是ADS1115不能实现差分?还是配置上有什么暗设置?

赞(0)
未经允许不得转载:TI中文支持网 » ADS1115 把AIN0与AIN1设置成差分输入,当AIN0比AIN1电压高的时候,能正常读出变化,但是AIN1比AIN0电压高的时候,就一直是FFFF
分享到: 更多 (0)