《16位AD转换芯片AD.pdf》由会员分享,可在线阅读,更多相关《16位AD转换芯片AD.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1.引言 在智能仪器仪表的应用中,由于传统的传感器信号是模拟信号,所以对于智能化的仪器,肯定需要 A/D 转换器以实现单片机的控制。在许多应用场合需要16位以上的高精度测量,而传统的积分型和逐次比较型 A/D 实现起来难度较大,且成本很高。近年来兴起的 A/D 转换技术却能以较低的成本获取极高的分辨率。AD 公司的 AD7705/06以及 AD7707为比较典型的一种16位 A/D 转换芯片。2.AD7705/06 简介 AD7705/06是美国 AD 公司近期推出的一款新型 A/D 芯片,其总体结构如图1所示。AD7705/06芯片是带有自校正功能的-于 A/D 转换器。其内部由多路模拟开关
2、、缓冲器、可编程增益放大器(PGA)、-调制器、数字滤波器、基准电压输入、时钟电路及串行接口组成。其中串行接口包括寄存器组,它由通讯寄存器、设置寄存器、时钟寄存器、数据输出寄存器、零点校正寄存器和满程校正寄存器等组成。该芯片还包括2通道差分输入(AD7705)和3种伪差分通道输入(AD7706)。AD7705/06的 PGA 可通过指令设定,对不同幅度的输入信号实现1、2、4、8、16、32、64和128倍的放大,因此 AD7705/06芯片既可接受从传感器送来的低电平输入信号,亦可接受高电平(10V)信号,它运用 技术实现16位无误码性能;它的输出速度同样可由指令设定,范围由 20Hz 到5
3、00Hz;它能够通过指令设定对零点和满程进行校正;AD7705/06与微处理器的数据传送通过串行方式进行,采用了节省端口线的通讯方式,最少只占用控制机的两条端口线。3.AD7705/06的基本连接及其与微处理器接口电路 3.1 AD7705/06的基本连接 AD7705/06的基本连接如图2所示,其中 AD780/REF192提供+2.5V 高精度基准电压。AD7705由于只有2个通道,所以它可以进行两种模拟量的转换,而 AD7706具有3个通道,所以它可以进行三种模拟量的转换,笔者在设计压力变送器时就充分运用了该芯片的功能,AD7706的基本连接与图2相似。3.2 AD7705/06与单片机
4、的接口电路 AD7705/06与微处理器的接口非常方便,在对它的操作过程中,涉及到接口的引脚有 CS、SCLK、DOUT、DIN 和 DRDY,它与微处理器的接口有三线、四线、五线及多线方式。在三线方式下,通常使用DOUT、DIN 及 SCLK 引脚进行控制,其中 DOUT 和 DIN 与微处理器的串行口相连,用于数据的输出和输入,SCLK 用于输入串行时钟脉冲,CS 始终为低电平。在四线方式下,CS 引脚也可以由微处理器的某一端口线控制。在五线方式下,DRDY 引脚也可以由微处理器的某条端口线控制。在多线控制方式下,所有的接口引脚都由微处理器来控制。图3是笔者使用 INTEL 8031对 A
5、D7706进行控制的简化电路图。AD7706的输出信号直接接到8031的 RXD(P3.0)端,而8031的 TXD(P3.1)端则为 AD7706提供时钟信号,可见在这样的连接方式下,A/D 转换器的时钟是由8031的 TXD 引脚提供的。单片机利用串行口与AD7706进行通信,将串行口设定为工作方式0,即同步移位寄存器方式。此外,单片机还通过 P1.0引脚来控制 CS,通过 P1.1引脚来判断 DRDY。这样,在多芯片系统中,我们首先应选中芯片,系统就得先清 P1.1口线。接收数据时,首先要判断 P1.0的引脚电平,若为低电平,则表明已有有效的转换数据在芯片的数据输出寄存器中,这样,单片机
6、置位 REN=1,此时,接收数据开始,当接收到8位数据时,中断标志位 R1置位,一次串行接收结束,单片机自动停止发送移位脉冲,该8位数据从串行口缓冲器读入内存,并使用软件清除 RI 标志,单片机又开始发送移位脉冲,直到又收到8位数据,则另一次串行接收结束。这样,这次的8位数据与刚才接收的高8位数据组合成为16位数据,即一次 A/D转换的结果。这种接口方法直接利用了单片机本身的硬件资源,从而简化了电路的设计。程序1 AD7706的初始化程序 BEGIN:CLR A MOV A,#010H;设置串行工作方式0 MOV SCON,A CLR P1.0;选中芯片 AD7706 MOV A,#20H;对
7、 CMR 进行写操作,下一操作选定 CKR MOV SBUF,A JNB TI,;接收完毕,TI 复位 CLR TI MOV A,#0CH;设置 CLK MOV SBUF,A JNB TI,CLR TI MOV A,#010H;对 CMR 进行写操作,下一操作选定 STR MOV SBUF,A JNB TI,CLR TI MOV A,#40H;设置 STR MOV SBUF,A JNB TI,CLR TI RET 程序2 输入字节程序(判断 DRDY 引脚):INB1:CLR C JB P1.1,INB1;判断 DRDY 引脚电平 CLR P1.0;DRDY 为0,有效数据,进行读数据操作 M
8、OV A,#38H;对 CMR 进行写操作,下一操作选定 DOR MOV SBUF,A MOV A,SBUF;从 AD7706中读入转换数据 MOV R3,A;高8位存入 R3中 JNB TI,CLR TI MOV A,SBUF;从 AD7706中读入转换数据 MOV R4,A;低8位存入 R4中 JNB TI,CLR TI RET 程序3 输入字节程序(判断 CMR 的最高位):INB2:CLR P1.0;对 AD7706进行操作 MOV A,#08H;对 CMR 进行写操作,下一操作选定 CMR MOV SBUF,A MOV SBUF,A;读 AD7706的 CMR ANL A,#1000
9、0000B;判断 DRDY 位,若为0,则有有效数据 JNZ INB2;等待 MOV A,#38H;对 CMR 进行写操作,下一操作选定 DOR MOV SBUF,A MOV A,SBUF MOV R3,A JNB TI,CLR TI MOV A,SBUF MOV R4,A JNB TI,RET 4.实用程序举例 下面给8031对 AD7706进行控制的程序,包括初始化程序(见程序清单)。对转换器芯片设置为:增益为1,无滤波器同步,双极输入模式和缓冲器关闭方式。5.结语 笔者在设计智能型压力变送器时,采用了图3的接线方式,AD7706的三通道分别接收来自压力(差压)传感器、温度传感器和静压传感器的信号,这样,可以对压力(差压)进行补偿,从而消除温度和静压所带来的影响,并应用以上程序进行初始化及读转换数据,使用后效果令人满意。