基于I2C总线的ADS1100型16位模/数转换器
扫描二维码
随时随地手机看文章
ADS1100是采用2.7V~5.5V单电源供电的连续自校准模/数(A/D)转换器。它具有分辨率、接口简单、比例放大、功耗低、体积小等优点。ADS1100采用电源电压为基准电压,可按比例进行A/D转换,同时带有差分输入且具有高达16位的分辨率。
ADS1100每秒可采样8、16、32或128次以进行A/D转换,并提供I2C端口与外部通信。片内可编程增益放大器(PGA)能提供高达8倍的增益,允许对小信号进行测量。ADS1100有二种工作方式:单周期转换方式和连续周期转换方式。在单周期转换方式中,ADS1100进行一次A/D转换后将自动掉电以减少电流消耗。
ADS1100的主要特点如下:
·16位无漏码;
·可连续自校准;
·带有可编程增益放大器(增益=1、2、4或8);
·可编程数据速率为8s/s~128s/s;
·带有I2C端口;
·电源电压范围为2.7V~5.5V;
·低电流消耗(90μA)。
1 引脚功能和内部结构
1.1 引脚功能
ADS1100的引脚排列如图1所示,采用小型SOT23-6封装,各引脚的功能如下所述。
引脚1(VIN+):差分信号正输入端;
引脚2(GND):地线;
引脚3(SCL):串行时钟输入端;
引脚4(SDA):串行数据输入/输出端;
引脚5(VDD):+5V电压输入端;
引脚6(VIN-):差分信号负输入端。
1.2 内部结构
ADS1100的内部结构框图如图2所示。由图可知,ADS1100由一个带有可调增益的Δ-∑模/数转换器核、一个时钟发生器一个I2C接口组成。ADS1100的模/数转换器核由差分开关电容Δ-∑调节器和数字滤波器组成。调节器用来测量正模拟输入和负模拟输入的压差,并将其与基准电压相比较。数字滤波器从调节器接收高速位流。并输出一个代码。该代码是一个与输入电压成比例的数字。考虑到调节器的增益和偏移误差的影响,ADS1100内部集成了自校准电路,以进行自动补偿。
2 ADS1100的内部寄存器
ADS1100内有二个寄存器:输出寄存器和匹配寄存器,它们均可通过I2C端口访问。输出寄存器内含上一次A/D转换的结果;配置寄存器允许用户改变ADS1100的工作方式并查询电路的状态。
图3
2.1 输出寄存器
16位输出寄存器中含有上一次A/D转换的结果,该结果采取二进制的补码格式。在复位或上电之后,输出寄存器被清零,并保持为0直到第一次A/D转换完成。输出寄存器的格式如表1所示。
表1 输出寄存器
BIT | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
NAME | D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 |
BIT | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
NAME | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
2.2 配置寄存器
8位配置寄存器用来控制ADS1100的工作方式、数据速率和可编程增益放大器(PGA)设置。配置寄存器的默认设置是8CH,具体模式如下:
BIT | 7 | 6 | 5 | 4 |
NAME | ST/BSY | 0 | 0 | SC |
BIT | 3 | 2 | 1 | 0 |
NAME | DR1 | DR0 | PGA1 | PGA0 |
其中ST/BSY位表示它是被写入还是被读出。在单周期转换方式中,写“1”到ST/BSY位则导致转换的开始,写“0”则无影响。在连续方式中,ADS1100将忽略ST/BSY的值。
在单周期转换方式中读地,ST/BSY表明模/数转换器是否忙于进行一次转换。如果ST/BSY被读作“1”,则表明目前模/数转换器忙,转换正在进行;如果被读作“0”,则表明目前没有进行转换,且上一次的转换结果存于输出寄存器中。在连续方式中,ST/BSY总是被读作“1”。
图4
位6和位5为保留位,必须被置为“0”。
SC位用于控制ADS1100的工作方式。当SC为“1”时,ADS1100以单周期转换方式工作;当SC为“0”时,ADS1100以连续转换方式工作。该位的默认设置为0。
位3和位2(DR位)用于控制ADS1100的数据速率,其控制方式如表2所列。
表2 DR位
DR1 | DR2 | DATA RATE |
0 | 0 | 128S/S |
0 | 1 | 32S/S |
1 | 0 | 16S/S |
1 | 1 | 8S/S |
位1和0(PGA位)用于控制ADS1100的增益设置,控制方式如表3所列。
表3 PGA位
PGA1 | PGA0 | GAIN |
0 | 0 | 1 |
1 | 0 | 1 |
0 | 1 | 2 |
1 | 0 | 4 |
1 | 1 | 8 |
3 ADS1100读写操作
3.1 ADS1100的读操作
用户可从ADS1100中读出输出寄存器和配置寄存器的内容。但为此要对ADS1100寻址,并从器件中读出3个字节。前面的2个字节是输出寄存器的内容,第三个字节是配置寄存器的内容。
从AD1100中读取多于3个字节的值是无效的。从第四个字节开始的所有字节将为FFH。ADS1100的读操作时序如图3所示。
图5
3.2 ADS1100的写操作
用户可写新的内容至配置寄存器(但不能更改输出寄存器的内容)。为了做到这一点,要对ADS1100寻址以进行写操作,并对ADS1100配置寄存器写入一个字节。对ADS1100的写操作时序如图4所示。
4 应用电路
图5是ADS1100在某测力计中的具体应用电路。根据设计要求,传感器的输出信号需要进行转换和放大,本系统采用低失调和低漂移的OP07运算放大器进行前级信号的放大和转换,同时通过TL062进行二级放大及零输入调整。为了提高输入信号的稳定性,应将信号通过LM310射极跟随器传递到ADS1100的差分信号输入端。