第十数模和模数转换.ppt

上传人:本田雅阁 文档编号:3130340 上传时间:2019-07-14 格式:PPT 页数:72 大小:740.53KB
返回 下载 相关 举报
第十数模和模数转换.ppt_第1页
第1页 / 共72页
第十数模和模数转换.ppt_第2页
第2页 / 共72页
第十数模和模数转换.ppt_第3页
第3页 / 共72页
第十数模和模数转换.ppt_第4页
第4页 / 共72页
第十数模和模数转换.ppt_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《第十数模和模数转换.ppt》由会员分享,可在线阅读,更多相关《第十数模和模数转换.ppt(72页珍藏版)》请在三一文库上搜索。

1、第十章 数/模和模/数转换,10.1 概述 10.2 数/模(D/A)转换 10.3 模数(A/D)转换 10.4 采样保持电路(略),10.1 概述,一、问题的提出 当计算机用于数据采集和过程控制的时候,采集对象往往是连续变化的物理量(如温度、压力、声波等),但计算机处理的是离散的数字量,因此需要对连接变化的物理量(模拟量)进行采样、保持,再把模拟量转换为数字量交给计算机处理、保存等。计算机输出的数字量有时需要转换为模拟量去控制某些执行元件(如声卡播放音乐等)。A/D转换器完成模拟量数定量的转换,D/A转换器完成数字量模拟量的转换。,二、模拟接口 定义:A/D D/A转换器可视作一外部设备

2、功能: 将微机系统的离散的数字信号和设备中连续变化的模拟量两者建立适配关系,使CPU能进行 控制与监测。,三、模拟输入输出系统,传感器 将各种现场的物理量测量出来 并转换成电信号(模拟电压或电流),放大器 把传感器输出的信号放大到ADC所需 的量程范围,低通滤波器 用于降低噪声、滤去高频干扰, 以增加信噪比,多路开关 把多个现场信号分时地接通到A/D转换器,采样保持器 周期性地采样连续信号, 并在A/D转换期间保持不变,一、D/A变换器的基本构成,模拟开关 电阻网络 运算放大器,权电阻网络 R-2R梯形电阻网络,Vref,Rf,模拟开关 电阻网络,VO,数字量,10.2 数/模(D/A)转换,

3、二、基本变换原理,运放的放大倍数足够大时,输出电压VO与输入电压Vin的关系为:,Vin,Rf,VO,R,若输入端有n个支路, 则输出电压VO与输入电压Vi的关系为:,Vin,Rf,VO,R1,Rn,令每个支路的输入电阻为2iRf , 并令Vin为一基准电压Vref,则有,如果每个支路由一个开关Si控制,Si=1表示Si合上,Si=0表示Si断开,则上式变换为,若Si=1,该项对VO有贡献; 若Si=0,该项对VO无贡献,对应的电路,权电阻网络,2R 4R 8R 16R 32R 64R 128R 256R,Vref,Rf,VO,S1 S2 S3 S4 S5 S6 S7 S8,这里,上式中的n=

4、8,如果用8位二进制代码来控制图中的S1S8(Di=1时Si闭合;Di=0时Si断开),则不同的二进制代码就对应不同输出电压VO; 当代码在0FFH之间变化时,VO相应地在0-(255/256)Vref之间变化; 为控制电阻网络各支路电阻值的精度,实际的D/A转换器采用R-2R梯形电阻网络,它只用两种阻值的电阻(R和2R)。,R-2R梯形电阻网络,13,T型电阻网络中,节点D的右边为两个2R的电阻并联,它们的等效电阻为R,几点C右边也是两个2R的电阻并联,结果等效电阻也是R ,以此类推,最后,在A点等效于一个数值为R的电阻连在参考电压VREF上。这样各点的电压分别为: Va= VREF, Vb

5、= VREF /2, Vc= VREF /4, Vd= VREF /8 当开关接通Iout1时,各点的电流为: I0 = Vd/2R ,I1 = Vc/2R ,I2 = Vb/2R, I3 = Va/2R 根据线性电路的叠加原理,输出电流Iout1就是: Iout1 = I0 + I1 + I2 + I3 = (VREF /2R)*(1/8+1/4+1/2+1),然后通过运算放大器的反相输出,得到电压输出Vout=- Iout1 Rfb。令Rfb =R,则: Vout = VREF * (20+21+22+23)/24 将上述电路推广到n位转换器,则有: Vout=(20*D0+21*D1+2

6、2*D2+2n-1*Dn-1)/2n* VREF 其中D0Dn-1 表示相应的二进制位。,14,三、主要技术指标,1、分辨率(Resolution) 输入的二进制数每1个最低有效位 (LSB)使输出变化的程度。 分辨率的表示有两种: 最小输出电压与最大输出电压之比 用输入端待进行转换的二进制数的位数来表示, 位数越多,分辨率越高。 分辨率的表示式为: 分辨率=Vref/2位数或 分辨率=(V+ref+V-ref)/2位数 若Vref=5V,8位的D/A转换器分辨率为5/256=20mV。,分辨率举例,一个满量程为5V的10位D/A变换器,1 LSB的变化将使输出变化 5/210 = 5/102

7、4 = 0.00488V = 4.88mV (LSB-Least Significant Bit),2、转换精度(误差),实际输出值与理论值之间的最大偏差 可用最小量化阶来度量: =1/2 LSB 也可用满量程的百分比来度量: 如0.05% FSR (FSR-Full Scale Range),3、转换时间,从开始转换到与满量程值相差1/2 LSB所对应的模拟量所需要的时间,t,V,1/2 LSB,tC,VFULL,4、线性度 当数字量变化时,D/A转换器输出的模拟量按比例变化的程度。 线性误差 模拟量输出值与理想输出值之间偏离的最大值。,DAC(数字模拟变换集成电路)是系统或设备中的一个功能

8、 器件,当将它接入系统时,不同的应用场合对其输入输出有不 同的要求, DAC的输入输出特性一般考虑以下几方面: (1)输入缓冲能力:DAC的输入缓冲能力是非常重要的,具有 缓冲能力(数据寄存器)的DAC芯片可直接与CPU或系统总线相 连,否则必须添加锁存器。,二、DAC的输入输出特性:,(2)输入码制:DAC输入有二进制和BCD码两种,对于单极性DAC可接收二进制和BCD码;双极性DAC接收偏移二进制或补码。 (3)输出类型:DAC输出有电流型和电压型两种,用户可根据需要选择,也可进行电流电压转换。 (4)输出极性:DAC有单极性和双极性两种,如果要求输出有正负变化,则必须使用双极性DAC芯片

9、。,1、接口的功能( CPU给DAC送数据无须条件查询) DAC芯片与CPU或系统总线连接时,可从数据总线宽度是 否与DAC位数据匹配、DAC是否具有数据寄存器两个方面来考虑,所以接口的功能主要考虑以下两点: (1)进行数据缓冲与锁存 (2)需进行两次数字量输入时,可在受控条件下同时进行转换 2、接口形式 (1)直通 (2)通过外加三态门,数据锁存器与CPU相连 (3)通过可编程的I/O接口芯片与CPU相连,三、D/A转换器与CPU的接口,1.DAC0832与CPU的接口 (1)DAC0832的性能参数 DAC0832是一片典型的8位DAC芯片 分辨率:8位 电流型:内部有2级缓冲器 转换时间

10、:1mS 功耗:20mW,四、D/A转换器接口的设计,(2)DAC0832引脚和内部结构如图所示。,DAC0832的内部结构,LE2,LE1,Rfb,AGND,DAC0832,Vcc,ILE,VREF,输入 寄 存 器,DGND,DI0DI7,D/A 转 换 器,DAC 寄 存 器,Iout2,Iout1,2.DAC0832的数字接口,8位数字输入端 DI0DI7(DI0为最低位) 输入寄存器(第1级锁存)的控制端 ILE、CS*、WR1* DAC寄存器(第2级锁存)的控制端 XFER*、WR2*,直通锁存器的工作方式,两级缓冲寄存器都是直通锁存器 LE1,直通(输出等于输入) LE0,锁存(

11、输出保持不变),LE2,LE1,DAC0832,输入 寄 存 器,DI0DI7,D/A 转 换 器,DAC 寄 存 器,Iout1,DAC0832的工作方式:直通方式,LE1LE21 输入的数字数据直接进入D/A转换器,LE2,LE1,DAC0832,输入 寄 存 器,DI0DI7,D/A 转 换 器,DAC 寄 存 器,Iout1,DAC0832的工作方式:单缓冲方式,LE11,或者LE21 两个寄存器之一始终处于直通状态 另一个寄存器处于受控状态(缓冲状态),LE2,LE1,DAC0832,输入 寄 存 器,DI0DI7,D/A 转 换 器,DAC 寄 存 器,Iout1,DAC0832的

12、工作方式:双缓冲方式,两个寄存器都处于受控(缓冲)状态 能够对一个数据进行D/A转换的同时;输入另一个数据 优点:数据接收与D/A转换可异步进行; 可实现多个DAC同步转换输出分时写入、同步转换,LE2,LE1,DAC0832,输入 寄 存 器,DI0DI7,D/A 转 换 器,DAC 寄 存 器,Iout1,3. DAC0832的模拟输出,Iout1、Iout2电流输出端 Rfb反馈电阻引出端(电阻在芯片内) VREF参考电压输入端 10V10V AGND模拟信号地 VCC电源电压输入端 5V15V DGND数字信号地,单极性电压输出,VoutIout1Rfb (D/28)VREF,Rfb,

13、Iout2,Iout1,Vout,+,_,AGND,A,DI,VREF,单极性电压输出:例子,设 VREF5V DFFH255时,最大输出电压: Vmax(255/256)5V4.98V D00H时,最小输出电压: Vmin(0/256)5V0V D01H时,一个最低有效位(LSB)电压: VLSB(1/256)5V0.02V,Vout(D/2n)VREF,双极性电压输出:电路,R1(R),R3(2R),R2(2R),Rfb,Iout2,Iout1,AGND,DI,VREF,Vout1,+,_,A1,Vout2,+,_,A2,双极性电压输出:公式,取 R2R32R1 得 Vout2(2Vout

14、1VREF) 因 Vout1(D/28)VREF 故 Vout2(D27)/27)VREF,双极性电压输出:例子,设 VREF5V DFFH255时,最大输出电压: Vmax(255128)/1285V4.96V D00H时,最小输出电压: Vmin(0128)/1285V5V D81H129时,一个最低有效位电压: VLSB(129128/1285V0.04V,Vout(D27)/27)VREF,4. 输出精度的调整,Rfb,Iout2,Iout1,Vout,+,_,AGND,调零 电位器,调满刻度 电位器,电源,5V,A,DI,10K,1M,1K,VREF,5. 地线的连接,DGND,AG

15、ND,模拟电路,数字电路,ADC,DAC,模拟电路,数字电路,6.应用举例 利用DAC可实现任意波形(如锯齿波、三角波、正弦波等)的输出,如输出锯齿波、三角波的程序段如下:,JNZ TN1 MOV AL,0FFH TN2:OUT DX,AL DEC AL,TRG:MOV DX,200H MOV AL,0H TN1:OUT DX,AL INC AL,JNZ TN2 JMP TN1,产生,0,AL全“1”输出,输出锯齿波程序段如下: TRG: MOV DX,200H MOV AL,0H TN: OUT DX,AL INC AL JMP TN ,7. 12位DAC连接 由于微机的I/O指令一次只能输

16、出8位数据,因此对于数据宽度大于8位DAC只能分两次输入数据,为此一般大于8位数据宽度的DAC内部均设计有两级数据缓冲,如12位DAC1210内部就有两级数据缓冲,内部结构如图所示。,在数据采集和过程控制中,被采集对象往往是连续变化的 物理量(如温度、压力。声波等),由于计算机只能处理离散 的数字量,需要对连续变化的物理转换为数字量,这一操作过 程就是A/D转换。,10.3 模数(A/D)转换,二、A/D转换的基本原理,存在多种A/D转换技术,各有特点,分别应用于不同的场合 4种常用的转换技术 计数器式 逐次逼近式 双积分式 并行式,45,各种ADC的优缺点,计数式ADC:最简单,但转换速度最

17、慢。 并行转换式ADC:速度最快,但成本最高。 逐次逼近式ADC:转换速度和精度都比较高,且比较简单,价格低,所以在微型机应用系统中最常用。 双积分式ADC:转换精度高,抗干扰能力强,但转换速度慢,一般应用在精度高而速度不高的场合,如测量仪表。,46,工作原理及技术指标,逐次逼近型A/D转换器 结构:由D/A转换器、比较器和逐次逼近寄存器SAR组成。见图。,Vi,-,+,逐次逼近寄存器,D/A转换器,Vc,比较器,数字量输出,控制电路,模拟量输入,47,工作原理,类似天平称重量时的尝试法,逐步用砝码的累积重量去逼近被称物体。 例如: 用8个砝码20g,21g,27g,可以称出1255g之 间的

18、物体。现有一物体,用砝码称出其重量(假定重量为176g)。,1)ADC从高到低逐次给SAR的每一位“置1”(即加上不同权重的砝码),SAR相当于放法码的称盘; 2)每次SAR中的数据经D/A转换为电压VC ; 3)VC与输入电压Vi比较,若VCVi,保持当前位的1,否则当前位置0; 4)从高到低逐次比较下去,直到SAR的每一位都尝试完; 5)SAR内的数据就是与Vi相对应的2进制数。,48,主要技术指标,精度 量化间隔(分辨率) = Vmax/电平数(即满量程值) 例:某8位ADC的满量程电压为5V,则其分辨率为 5V/255=19.6mV 量化误差: 用数字(离散)量表示连续量时,由于数字量

19、字长有限而无法精确地表示连续量所造成的误差。(字长越长,精度越高) 绝对量化误差 = 量化间隔/2 = (满量程电压/(2n-1)/2 相对量化误差 = 1/2 * 1/量化电平数目 * 100% 例:满量程电压=10V,A/D变换器位数=10位,则 绝对量化误差 10/211 = 4.88mV 相对量化误差 1/211 *100% = 0.049%,三、A/D转换器特性 A/D转换器的功能是把模拟量转换为数字量,其主要参数有:,(1)分辨率:指A/D转换器可转换成数字量的最小电压 ,是反映A/D转换器对最小模拟输入值的敏感度,所以分辨率一般表示式为: 分辨率=Vref/2位数(单极性) 或

20、分辨率=(V+ref-V-ref)/2位数(双极性),分辨率通常是用A/D的位数来表示,比如 8位、10位、12位等 所以, A/D转换器的输出数字量越多。其分辨率越高。 如:8为ADC满量程为5V,则分辨率为5000mV/256=20mV, 也就是说当模拟电 压小于20mV,ADC就不能转换了,,(2)转换时间:指从输入启动转换信号到转换结束,得到稳定的数字量输出的时间。一般转换速度越快越好(特别是动态信号采集)。常见有: 超高速(转换时间1ns)、高速(转换时间1s)、 中 速(转换时间1ms) 低速(转换时间1s)等。 如果采集对象是动态连续信号,要求f采2 f信,也就是说必须在信号的一

21、个周期内采集2个以上的数据,才能保证信号形态被还原(避免出现“假频”),这就是“最小采样”原理。若f信=20kHz,则f采 40kHz,其转换时间要求25s.,(4)线性度:当模拟量变化时,A/D转换器输出的数 字量按比例变化的程度 (5)量程: 指能够转换的电压的范围:05V,0 10V等,(3)精度:有绝对精度和相对精度 绝对精度 指定应于一个给定的数字量的实际 模拟量输入与理论模拟量输入之差。 相对精度 指在整个转换范围内任一数字量所 对应的模拟量实际值与理论值之差 通常也用最小有效位的分数表示。,2转换时间 指从启动转换信号被输入开始到结束获得稳定的数字量输出量为止所需的时间。 3转换

22、启动信号(电位启动和脉冲启动) 在转换过程中必须保持高/低电平信号一直有效,否则将导致转换出错。,四、 ADC的输入输出特性 1.输出数据位数 8位,10位,12位,16位等,4 片上带有三态门输出琐存器 可直接与CPU的DB相连 片上未带三态门输出琐存器 与CPU相连需外加琐存器 5 转出数字量有二进制和BCD码 ADC的数字量输出线位数越多,说明其分辨率越高。 6 模拟信号输入及通道 模拟信号输入来自于外部信号输入对象,有单、多通道 之分。,五、A/D转换器与微处理器的接口 1、 接口应具备的功能; A/D转换器的转换是由外部控制,需发送转换启动信号 启动A/D进行A/D转换。 读取“转换

23、结束”状态信号,用以查询转换是否结束若 该状态信号有效,可用于产生中断请求或DMA请求。 对多个模拟量输入通道进行通道寻址 方法:CPU通过DB送出对应模拟通道的编号,而不是 通过地址总线送出。, 发送采样/保持信号S/H,以控制采样/保持器进行 采样与保持操作(需要时) 。,2. A/D转换器与CPU接口方式 (1)与CPU直接相连:当ADC芯片内部带有数据输出锁存器和三态门时(如AD574、ADC0809等),它们的数据输出可直接与CPU或数据总线相连。 (2)用三态门与CPU相连:对于内部不带数据输出锁存器的ADC芯片(如ADC1210、AD570等),需外接三态锁存器后才能与CPU或系

24、统总线相连。 (3)通过I/O接口芯片与CPU相连:无论ADC内部有无数据锁存器,都可使用与CPU配套的并行I/O芯片与ADC相连,这样可简化接口电路, 而且可使A/D的时序关系及电平与CPU保持一致,工作更可靠。,如先读低8位,后读高4位,则称为“右对齐”,3. A/D转换器接口电路的设计实例 注意点: 各ADC的转换启动、转换结束命令各不相同, 需具体使用时注意。 进行12位A/D转换时,需分两次将12位数据送CPU的DB7 0。 如先读高4位,后读低8位,则称为“左对齐”, 读取高4位时是屏蔽字节中的高4位。,六、典型的D/A转换器芯片,ADC0809: 8通道(8路)输入 8位字长 逐

25、位逼近型 转换时间100s 内置三态输出缓冲器,主要引脚功能,D7D0:输出数据线(三态) IN0IN7:8通道(路)模拟输入 ADDA、ADDB、ADDC:通道地址 ALE:通道地址锁存 START:启动转换 EOC:转换结束状态输出 OE:输出允许(打开输出三态门) CLK:时钟输入(10KHz1.2MHz),内部结构,START EOC CLK,OE,D7 D0,VREF(+) VREF(-),ADDC ADDB ADDA ALE,IN0,IN7,比较器,8路模拟开关,逐位逼近寄存器SAR,树状开关,电阻网络,三态输出锁存器,时序与控制,地址锁存及 译码,D/A,8 个模拟输入通道,8选

26、1,工作时序,ADC0809的工作过程,由时序图知ADC0809的工作过程如下: 送通道地址,以选择要转换的模拟输入; 锁存通道地址到内部地址锁存器; 启动A/D变换; 判断转换是否结束; 读转换结果,ADC0809的应用,芯片与系统的连接 编写相应的数据采集程序,芯片与系统的连接,模拟输入端Ini : 单路输入 多路输入,单路输入时,ADDC ADDB ADDA,IN4,ADC0809,输入,多路输入时,ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,输入0 输入1 输入2 输入3 输入4,CPU指定 通道号,+5V,通道地址线ADDA-ADDC的连接,

27、多路输入时,地址线不能接死,要通过一个接口芯片与数据总线连接。接口芯片可以选用:,简单接口芯片74LS273,74LS373等(占用一个I/O地址) 可编程并行接口8255(占用四个I/O地址),ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,输 入,DB,74LS273,Q2 Q1 Q0,CP,来自I/O译码,D0-D7,ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,DB,8255,PB2 PB1 PB0,CS#,来自I/O译码,D0-D7,A1 A0,A1 A0,数据输出线D0-D7的连接,可直接连到DB上,或通

28、过另外一个输入接口与DB相连; 两种方法均需占用一个I/O地址,D0-D7,ADC0809,DB,OE,来自I/O译码,D0-D7,ADC0809,DB,OE,来自I/O译码,直接连DB,通过输入接口连DB,74LS244,+5V,DI,DO,E1# E2#,ALE和START端的连接,独立连接:用两个信号分别进行控制需占用两个I/O端口或两个I/O线; 统一连接:用一个脉冲信号的上升沿进行地址锁存,下降沿实现启动转换只需占用一个I/O端口或一个I/O线。,ADC0809,ALE START,独立连接,来自I/O译码1,来自I/O译码2,ADC0809,ALE START,统一连接,来自I/O

29、译码,判断转换结束的方法,软件延时等待(比如延时1ms),此时不用EOC信号-CPU效率最低 软件查询EOC状态 把EOC作为中断申请信号,接到8259的IR端 在中断服务程序中读入转换结果,效率高,EOC通过一个三态门连到数据总线的某个D端 三态门占用一个I/O端口地址 CPU效率低,68,D0,IN0,A15-A0 IOR# IOW#,D7-D0,D7-D0 EOC OE START ALE ADDC ADDB ADDA,译 码 器,ADC0809,一个连接实例(用查询方式),模拟信号输入,判断转换结束的程序,用延时等待的方法 MOV DX, start_port OUT DX, AL ;

30、启动转换 CALL DELAY_1MS ;延时1ms MOV DX, oe_port IN AL, DX ;读入结果 ,判断转换结束的程序,用查询EOC状态的方法 MOV DX, start_port OUT DX, AL ;启动转换 LL: MOV DX, eoc_port IN AL, DX AND AL, 01H ;测试EOC状态 JZ LL MOV DX, oe_port IN AL, DX ;读入结果 ,71,进一步应考虑的问题,多个模拟通道时,程序怎样编写? ADC位数大于8位应怎样处理? 用8255时程序应怎样编写? 以上三个问题留作思考题,微机原理及应用,本课程到此全部结束, 谢谢大家的合作与支持!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1