第六章-5-DA、AD转换接口

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章第6章A/D及D/A转换器6.1D/A转换器工作原理6.2D/A转换器的主要性能指标6.3DAC0832D/A转换器6.4A/D转换器主要性能指标6.5A/D转换器工作原理6.6ADC0809A/D转换器A/D(模/数)及D/A(数/模)转换技术广泛应用于计算机控制系统及数字测量仪表中。将模拟量信号转换成数字量的器件称为模/数转换器(简称A/D转换器),而将数字量信号转换成模拟量信号的器件称为数/模转换器(简称D/A转换器)。6.1D/A转换器原理模拟量与数字量模拟量——连续变化的物理量数字量——时间和数值上都离散的量模拟/数字转换器ADCDAC数字/模拟转换器6.1模拟输入输出系统数字信号模拟信号现场信号1现场信号2现场信号n微型计算机放大器放大器放大器多路开关低通滤波传感器低通滤波传感器低通滤波传感器A/D转换器采样保持器数字信号受控对象控制信号模拟信号D/A转换器放大驱动电路…传感器将各种现场的物理量测量出来并转换成电信号(模拟电压或电流)放大器把传感器输出的信号放大到ADC所需的量程范围低通滤波器用于降低噪声、滤去高频干扰,以增加信噪比多路开关把多个现场信号分时地接通到A/D转换器采样保持器周期性地采样连续信号,并在A/D转换期间保持不变D/A转换电路形式较多,在集成电路中,一般采用电阻解码网络。其框图如下:D/A转换器原理D/A转换器用于将数字量转换成模拟量,它的输入量是数字量D,输出为模拟量VO。要求输出量与输入量成正比,即:Vo=D*Vn其中Vn为基准电压。(在每次转换过程中为常量)D=a12-1+a22-2+a323+…+an2-n其中a1,a2,……an为输入的数字量代码,n为输入位数。将式(13-2)代入式(13-1)得:VoVo=ai2-i*Vn将输入的每一位数字量转换为与其权相应的模拟量,各位对应的模拟量相加则得到D/A转换器的输出,模拟输出与数字量输入成正比。一般的D/A转换器都是根据这一原理设计的。D/A转换器工作原理——T型权电阻网络T型权电阻网络Dout=ffh(全1,开关闭合)I=Vref/R=(Vref/R)*(1/2+1/4+1/8+……+1/256)=255/256*(Vref/R)Vout=-I×R0=-(Vref*R0/R)×255/25610.2D/A转换器的主要性能指标分辨率:分辨率指D/A转换器所能产生的最小模拟量增量。分辨率用它的位数表示,8位二进制数,分辨率就是1/255。转换精度:精度用于衡量D/A转换器在将数字量转换成模拟量时,所得模拟量的精确程度。它表明了模拟输出实际值与理想值之间的偏差。绝对精度:绝对精度指在输入端加入给定数字量时,在输出端实测的模拟量与理论输出值之间的偏差相对精度:相对精度指当满量程值校准后,任何数字输入的模拟输出值与理论值的误差,实际上即是D/A转换的线性度。线性度:线性度指D/A转换器的实际转换特性(各数字输入值所对应的各模拟输出值之间的连线)与理想的转换特性(始终点连线)之间的误差。转换时间(建立时间):数字量输入DAC到输出稳定模拟量的时间。电压型较慢,主要取决于运放放大器速度。某一测控系统要求计算机输出的模拟控制信号的分辨率必须达到千分之一,则应选用的A/D转换器的分辨率至少应该为_____位?a)4b)8c)10d)1210.3带缓冲器的D/A转换器——DAC0832主要性能指标:分辨率8位输出模拟信号:电流信号电流建立时间1us单电源+5~+15VREF输入端电压:25V功耗200mW最大电源电压17V1.引脚和逻辑结构20个引脚、双列直插式8位输入寄存器8位DAC寄存器8位D/A转换器VREFIOUT2RFBAGNDVCCDGNDDI7~DI0CSWR1WR2XFERILELELEIOUT1&&&RFBVcc芯片电源电压,+5V~+15VVREF参考电压,-10V~+10VRFB反馈电阻引出端,此端可接运算放大器输出端AGND模拟信号地DGND数字信号地8位DAC寄存器8位D/A转换器VREFIOUT2RFBAGNDVCCDGNDDI7~DI0LEIOUT1LECSWR1WR2XFERILE&&&8位输入寄存器RFBDI7~DI0数字量输入信号其中:DI0为最低位,DI7为最高位8位DAC寄存器8位D/A转换器VREFIOUT2RFBAGNDVCCDGNDDI7~DI0LEIOUT1LECSWR1WR2XFERILE&&&8位输入寄存器RFB8位DAC寄存器8位D/A转换器VREFIOUT2RFBAGNDVCCDGNDDI7~DI0LEIOUT1LECSWR1WR2XFERILE&&&8位输入寄存器RFB0011ILE输入锁存允许信号,高电平有效CS片选信号,低电平有效WR1写信号1,低电平有效LE1当ILE、CS、WR1同时有效时,LE=1,输入寄存器的输出随输入而变化WR1,LE=0,将输入数据锁存到输入寄存器LE2XFER转移控制信号,低电平有效WR2写信号2,低电平有效•当XFER、WR2同时有效时,LE2=1DAC寄存器输出随输入而变化;•WR2,LE=0,将输入数据锁存到DAC寄存器,数据进入D/A转换器,开始D/A转换VREF8位DAC寄存器8位D/A转换器IOUT2RFBAGNDVCCDGNDDI7~DI0LEIOUT1LECSWR1WR2XFERILE&&&8位输入寄存器RFB0012.DAC0832与微机系统的连接1)直通方式:输入的数字数据直接进入D/A转换器2)单缓冲工作方式一个寄存器工作于直通状态,另一个工作于受控锁存器状态3)双缓冲工作方式两个寄存器均工作于受控锁存器状态,2)单缓冲工作方式:一个寄存器工作于直通状态,一个工作于受控锁存器状态在不要求多相D/A同时输出时,可以采用单缓冲方式,此时只需一次写操作,就开始转换,可以提高D/A的数据吞吐量。VOUT图10.2PC机总线与DAC0832的连接&PC总线DAC0832DB7A0A1A3A2A4A5A6A7A8A9DB0DB1DB2DB3DB4DB5DB6D7D0D1D2D3D4D5D6IELVCCXFERCSDGNDAGNDWR2WR1VrcfRfbIOUT1IOUT2_++5V+5VIOWAEN2F7H+-Voport数据线地址译码PC总线IOWA0~A9D0~D7+5VCSDAC0832DI0~DI7IOUT1IOUT2RFBXFERWR2WR1ILE单缓冲工作方式:输入寄存器工作于受控状态DAC寄存器工作于直通状态PC总线I/O写时序A15~A0CLKIOWT4T1T2T3TwD7~D0port转换一个数据的程序段:MOVAL,data;取数字量MOVDX,portOUTDX,ALD/A转换IOUT2DI7~DI0LEIOUT1LECSWR1ILE&WR2XFER&输入寄存RFB-+VoIOWA9~A0D7~D0+5VPC总线port地址译码DAC寄存port数据线地址译码PC总线IOWA0~A9D0~D7+5VXFERDAC0832DI0~DI7+-VoIOUT1IOUT2RFBCSWR1WR2ILE单缓冲工作方式:输入寄存器工作于直通状态DAC寄存器工作于受控状态PC总线I/O写时序A15~A0CLKIOWT4T1T2T3TwD7~D0port转换一个数据的程序段:MOVAL,data;取数字量MOVDX,portOUTDX,ALIOUT2DI7~DI0LECSWR1ILE&输入寄存VoD7~D0+5VPC总线portWR2IOWA9~A0XFERD/A转换LEIOUT1RFB-+DAC寄存地址译码&3)双缓冲工作方式:两个寄存器均工作于受控锁存器状态DAC0832PC总线数据线WR1IOWDI0~DI7D0~D7+5VILE+-VoIOUT1IOUT2RFBWR2CS地址译码A0~A9XFERVREF-5Vport1port2DGNDAGND转换一个数据的程序段:MOVAL,data;取数字量MOVDX,port1OUTDX,AL;打开第一级锁存MOVDX,port2OUTDX,AL;打开第二级锁存IOUT2DI7~DI0LECSWR1ILE&输入寄存VoD7~D0+5VPC总线port2WR2IOWA9~A0XFERD/A转换LEIOUT1RFB-+DAC寄存地址译码&port1当要求多个模拟量同时输出时,可采用双重缓冲方式。思考:相应的程序如何编写?地址译码port1XFERWR2CSWR1ILE+D/A转换DI7~DI0Vo1port2XFERWR2CSWR1ILE+D/A转换DI7~DI0Vo2port3DAC0832DAC0832D7~D0A9~A0IOWPC总线+5v+5vcodeSEGMENTASSUMECS:code,DS:codedatav1DB6h,12h,13h,14h,15h,16h,17h,18h,19h,1Ahdatav2DB21h,22h,23h,24h,25h,26h,27h,28h,29h,2Ahstart:MOVAX,codeMOVDS,AXLEASI,data_v1LEABX,data_v2MOVCX,10next:MOVAL,[SI];取V1的数据OUTport1,AL;打开第一片0832第一级锁存MOVAL,[BX];取V2的数据OUTport2,AL;打开第二片0832第一级锁存OUTport3,AL;打开两片0832的第二级锁存INCSIINCBXLOOPnextMOVAH,4CHINT21HcodeENDSENDstart编程:利用上图,将datav1和datav2处的两组数据,一一对应转换成模拟量同时输出。3.应用举例(调幅)例1连线如图,计算当数字量为0CDH时的输出Vo。DAC0832PC总线数据线WR1IOWDI0~DI7D0~D7+5VILE+-VoIOUT1IOUT2RFBWR2DGNDCS地址译码A0~A9XFERVREF-5Vport1port2转换一个数据的程序段:MOVAL,0CDHMOVDX,port1OUTDX,ALMOVDX,port2OUTDX,AL调幅分析:当数字量为0FFH=255时,IOUT1=Vo=-IOUT1×RFB=-FBREF256R255V256255VREF所以:当数字量为0CDH=205,VREF=-5V时:Vo=-=4V256205VREF数据线WR1IOWDI0~DI7D0~D7+5VILE+-VoIOUT1IOUT2RFBWR2DGNDCS地址译码A0~A9XFERVREF-5Vport1port2注意:Vo的输出与参考电压VREF、以及输出的连接方法(同相还是反相)有关。数据线WR1IOWDI0~DI7D0~D7+5VILE+-VoIOUT1IOUT2RFBWR2DGNDCS地址译码A0~A9XFERVREF-5Vport1port24V上例中,若VREF接的是-10V,则Vo=8V-10V8V10V若VREF接的是10V,则Vo=-8V-8V例2利用上例连线图,编程输出一锯齿波。tVo4V0V调频:codeSEGMENTASSUMECS:codestart:MOVCX,8000H;波形个数MOVAL,0;锯齿谷值next:MOVDX,port1;打开第一级锁存OUTDX,ALMOVDX,port2;打开第二级锁存OUTDX,ALCALLdelay;控制锯齿波的周期INCAL;修改输出值CMPAL,0CEH;比较是否到锯齿峰值JNZnext;未到跳转MOVAL,0;重置锯齿谷值LOOPnext;输出个数未到跳转MOVAH,4CH;返回DOSINT21H;子程delay(略)codeENDSENDstartVo4V0VCDH4V0VVot实际输出的波形图tVo4V0V不是思考题8位D/A转换器DAC0832工作在单缓冲方式,设其口地址为PORT1,参考电压Vref=10V,下列程序用以产生规则波形,该波形的幅值为()V,波形为()。xoral,allop

1 / 65
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功