您现在的位置是:首页 > 快讯

高精度模数转换器ADS1211芯片的结构、特点和应用分析

2020-08-16 03:01:30

1 ADS1211的结构及特点

ADS1211是美国Burr-Brown公司生产的高精度模数转换(A/D)芯片,它采用24脚双列直插式封装形式,图1是ADS1211的引脚排列,各引脚的功能如表1所列。

表1 ADS1211的引脚功能

高精度模数转换器ADS1211芯片的结构、特点和应用分析

ADS1211是具有高精度宽动态范围的A/D转换芯片,它带有自校正∑-ΔA/D转换器。其内部由可编程增益放大器、二阶∑-Δ调制器、调制控制单元、可编程数字滤波器和微处理器组成,其中微处理器含有指令寄存器、命令寄存器、数据寄存器、校正寄存器、串行接口时钟产生电路、+2.5V基准源、+3.3V参考电压源以4通道差动输入模拟开关等。图2是ADS1211的内部结构框图。当ADS1211再次上电复位时,首先由微处理器将内部所有的寄存器复位成缺省状态,并将调制器复位成稳定状态,再以850Hz的频率进行自校准,然后时入转换状态(即正常操作模式)。ADS1211的主要特点如下:

●采用∑-ΔA/D转换方式;

●具有24位无误码率,其线性误差小于0.0015%;

●在10Hz时,可获得23位有效分辨率,在1000Hz时,可达到20位的有效分辨能力;

●采用4通道差动输入;

●内含可编程增益放大器,放大倍数可在1,2,4,8,16中选取;

●带有内部/外部基准源;

●芯片内有半自动校准功能;

●与SPI兼容,并可提供双线控制模式。

2 ADS1211的重要寄存器设置

2.1 指令寄存器(2N5R)

ADS1211中的指令寄存器格式及其设置说明如图3所示。

2.2 命令寄存器(CMR)

图4是ADS1211中的命令寄存器格式。其各位的含义和设置如下:

BIAS:偏置电压输出开/关位。BIAS为“0”时为关状态;为“1”时为开状态;

REF0:基准电压输出开/关位。为“0”时为关状态;为“1”时为开状态;

DF:数据输出格式位。“0”为二进制补码;“1”为偏移二进制码;

V/B:数据极性位。“0”为双极性;“1”为单极性;

BD:字节顺序位为“0”时表示先读最高字节;为“1”表示先读最低字节;

MSB:位顺序控制位。“0”表示先读最高位;“1”表示先读最低位;

SDL:数据输出引脚选择位。为“0”时,选择SDL为输出;为“1”时,选择Sdout为输出;

DRDY:数据准备就绪位。“0”为准备好;“1”为未准备好;

G2~G0:增益选择控制位。

MD2~MD0:操作模式位,其操作方式的选择如表2所列。

表2 ADS1211的操作模式选择 [table][/table]

CH1~CH0:通道选择位,该两位组合为00、01、10、11可分别用来选择1通道到通道4。

SF2~SF0:加速因子选择位,从000~100的五种组合分别表示选择1、2、4、8和16。

DR12~DR0:抽取率选择位,其有效范围为20~8000。ADS1211的转换速率和加速因子的关系如下:

转换速率fDATA=fxin·TMR512抽取率

式中:fxin指的是从Xm引脚引入的时钟信号的频率;TMR则是指加速因子的值;

应当注意的是:增益和加速因子的乘积应不大于16。

2.3 输出数据寄存器(DOR)

输出数据寄存器DOR是一个24位寄存器,可用来存放最新的转换结果,DOR内容刚好在DRDY信号由高变低前被更新,如果在(1/fDATA-12×1/fxin)所定义的时间间隔内设有读取DOR的内容,则原有的内容将被覆盖。

另外,OCR和FCR寄存器还可用于存放零点校正和满量程校正参数值。

3 ADS1211与89C52的接口电路

图5是在测量三相电压和电流时的ADS1211与89C52单片机的实际硬件接口电路,笔者采取从动方式,并采用四线制方式来实现ADS1211与单片机的接口,即将DRDY、SCLK、SDIO、SDOUT四条接口信号线分别接至89C52单片机的P1.1、P1.2、P1.3、P1.4引脚。

4 串行接口读/写时序

图6是ADS1211在从动方式下将片选端固定接地时与单片机进行接口的软件读/写时序。

5 软件流程图

根据图5所示的ADS1211与单片机的接口电路给出的程序流程图如图7所示。

如果将电路设置为从动方式,那么增益GAIN应选为1,加速因子TMR为1,fXIN选择10MHz,抽取率(DR)为1952(即0011110100000),fDATA为10MHz并选择单极性输入和半自动校准方式,同时选择通道输入1,那么,具体的测量程序和读写延时子程序如下:

测量主程序:

SDIO EQV P1.3

SCLK EQV P1.2

DRDY EQV P1.1

SDOUT EQV P1.4

ORG 0000H

CLR EA

CLR SCLK

LCALL TIME ;延时子程序

JB DRDY,$

NOP

NOP

MOV A,#64H

LCALL WRBYTE;WRITE-INSR

NOP

NOP

MOV A,#52H

LCALL WRBYTE;

MOV A,#20H

LCALL WRBYTE;

MOV A,#70H

LCALL WRGYTE;

MOV A,#0AON

LCALL WRBYTE;WRITE-CMR

SETB DRDY

JB DYDY,$

NOP

NOP

MOV A,#0AON

LCALL WRTYTE;WRITE-INSR

NOP

NOP

LCALL RDBYTE

MOV 22H,A;

LCALL RDBYTE

MOV 21H,A;

LCALL RDBYTE

MOV 20H,A;READ-DOR

SETB DRDY

读数据子程序;

RDBYTE:MOV R7,#8

RDBYTE1:SETB SCLK

MOV C,SDOUT

CLR SCLK

RLC A

DJNZ R7,RDBYTE1

RET

写数据子程序:

WRBYTE:MOV R7,#8

WRBYTE1:RLC A

SETB SCLK

MOV SDIO,C

CLK SCLK

DJZN R7,WRBYTE1

RET

延时子程序:

TIME:MOV R6,#10

TIME1:MOV R7,#OFFH

DJNZ R7,$

DJNZ R6,TIME1

RET

6 注意事项

利用该方法设计接口电路时,应注意以下两点:

(1)地线要尽量短而粗,数字地和模拟地要分开布线,并要在一点汇合,模拟地可布置在ADS1211芯片的下面,但数字信号应避免布在AD78715芯片的下面, 时钟信号要用数字地屏蔽,输入的模拟信号要用模拟地屏蔽。

(2)模拟电源AVDD和数字电源DVDD最好分开用,最好使用精密基准电源,因为精密其准电源可以提高测量数据的稳定度。

责任编辑:gt