TI论坛
直播中

李斌

7年用户 1413经验值
私信 关注
[问答]

ADS1255采集负电压时输出一直为正,从未采集到符号位为1的负数,为什么?


  • ads1255芯片采用差分模式,输入正与输入负端均在gnd~vdd之间,在采集正电压准确,在采集负电压时,总是采集到正数,如采集-0.8V,输入VINP=2.1V,VINN=2.9V,但采集到的数值是4.2V,如采集-1.2V,输入VINP=1.9V,VINN=3.1V,但采集到的数值是3.8V左右,在采集负电压时从没出现过符号为1的数。

回帖(2)

夏日余晖

2024-11-15 10:11:12

您好,

首先请注意,在buffer

on的时候每个输入端最大输入范围到AVDD-2V:


建议您输入一个固定的负电压,然后用示波器抓读取波形,看输出波形对应的输出code是多少?最高位是否为1?我认为这是检查ADC输出问题还是程序读取时序问题的最好办法。


举报

红旧衫

2024-11-15 11:19:38
根据您的描述,ADS1255在采集负电压时输出一直为正,从未采集到符号位为1的负数。这可能是由以下几个原因导致的:

1. 硬件连接问题:请检查您的硬件连接是否正确。确保输入正(VINP)和输入负(VINN)端子正确连接,且输入信号在GND和VDD之间。如果连接错误,可能导致采集到的电压值不正确。

2. 参考电压设置问题:ADS1255的参考电压(VREF)可能设置不正确。请检查您的VREF设置是否与您的实际输入信号范围相匹配。如果VREF设置不正确,可能导致采集到的电压值不正确。

3. 增益设置问题:ADS1255的增益设置可能不正确。请检查您的增益设置是否与您的实际输入信号范围相匹配。如果增益设置不正确,可能导致采集到的电压值不正确。

4. 代码问题:请检查您的代码是否正确处理了ADS1255的输出数据。确保您正确地读取了数据,并正确地处理了符号位。如果代码处理不正确,可能导致采集到的电压值不正确。

为了解决这个问题,您可以尝试以下步骤:

1. 重新检查硬件连接,确保输入正(VINP)和输入负(VINN)端子正确连接。

2. 检查VREF设置,确保与您的实际输入信号范围相匹配。

3. 检查增益设置,确保与您的实际输入信号范围相匹配。

4. 检查代码,确保正确处理了ADS1255的输出数据,包括符号位的处理。

5. 如果以上步骤都无法解决问题,您可以尝试使用其他ADC芯片进行对比测试,以确定问题是否出在ADS1255芯片本身。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分