微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > 关于ADS1015读出的值怎么转换?

关于ADS1015读出的值怎么转换?

时间:10-02 整理:3721RD 点击:

最近调试ADS1015,用来测量电池的电量,AIN0外接,其他3路都接地,不使用,内部Config Register 不管是配置成默认的8583,还是C583,读出来的值都是0x7FF0,不知道这个值是怎么转换成正常电压还有设置对不对,(我的设置是AIN0接入电压,然后每次读之前去设置一下single conversion)不知道对不对?

Datasheet 上面说明:The positive full-scale input produces an output code of 7FF0h and the negative full-scale input produces an output code of 8000h.首先你实际测量下实际输入是不是满量程了。Config Register配置成默认的配置成默认的8583h的话,要注意Bits [11:9] PGA[2:0]: Programmable gain amplifier configuration default的时候,010 : FS = ±2.048V (default),This parameter expresses the full-scale range of the ADC scaling. In no event should more than VDD + 0.3V be applied to this device.注意输入通过增益后就饱和了。

你的应用里,8583和C583没有区别,因为AIN1已经接地了。从手册第7页图8来看,如果AIN0有共模,而另外几个输入接地,那么PGA肯定会放大AIN0的共模电压,这很容易造成内部ADC的饱和。举个例子,PGA增益=2,输入信号是0~1V正弦波,则输入共模=0.5V,进入PGA后,共模会被放大为1V。

谢谢,已经解决了,原来不知道工作方式,多看了几篇datasheep就明白了,其实就是读出值除以0x7ff0然后乘以最大刻度,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top