模拟技术学习
直播中

张嘉

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

ADS1211与***注意事项?

受到警告
提示: 作者被禁止或删除 内容自动屏蔽

回帖(1)

曹雪

2021-4-22 15:02:23
  1 ADS1211的结构及特点
  ADS1211是美国Burr-Brown公司生产的高精度模数转换(A/D)芯片,它采用24脚双列直插式封装形式,图1是ADS1211的引脚排列,各引脚的功能如表1所列。
  表1 ADS1211的引脚功能
  b1.gif
  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的操作模式选择 b2.gif
  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最好分开用,最好使用精密基准电源,因为精密其准电源可以提高测量数据的稳定度。
举报

更多回帖

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