微型计算机原理及应用(第三版)电子教案第10章课件.ppt

上传人:小飞机 文档编号:1772996 上传时间:2022-12-17 格式:PPT 页数:82 大小:1.45MB
返回 下载 相关 举报
微型计算机原理及应用(第三版)电子教案第10章课件.ppt_第1页
第1页 / 共82页
微型计算机原理及应用(第三版)电子教案第10章课件.ppt_第2页
第2页 / 共82页
微型计算机原理及应用(第三版)电子教案第10章课件.ppt_第3页
第3页 / 共82页
微型计算机原理及应用(第三版)电子教案第10章课件.ppt_第4页
第4页 / 共82页
微型计算机原理及应用(第三版)电子教案第10章课件.ppt_第5页
第5页 / 共82页
点击查看更多>>
资源描述

《微型计算机原理及应用(第三版)电子教案第10章课件.ppt》由会员分享,可在线阅读,更多相关《微型计算机原理及应用(第三版)电子教案第10章课件.ppt(82页珍藏版)》请在三一办公上搜索。

1、第10章A/D及D/A转换器,10.1D/A转换器工作原理10.2D/A转换器的主要性能指标10.3DAC 0832 D/A转换器10.4A/D转换器主要性能指标10.5A/D转换器工作原理10.6ADC 0809 A/D转换器10.7AD 570 A/D转换器习题,A/D(模/数)及D/A(数/模)转换技术广泛应用于计算机控制系统及数字测量仪表中。将模拟量信号转换成数字量的器件称为模/数转换器(简称A/D转换器),而将数字量信号转换成模拟量信号的器件称为数/模转换器(简称D/A转换器)。,10.1 D/A转换器工作原理,D/A转换器从工作原理上可分为并行D/A转换器及串行D/A转换器两种。并

2、行D/A转换器的转换速度快,但电路复杂。随着微电子技术的发展,并行D/A转换器集成电路目前已大量生产,广为采用。并行D/A转换器的位数与输入数码的位数相同,对应输入数码的每一位都设有信号输入端,用以控制相应的模拟切换开关,把基准电压Un接到电阻网络上。并行D/A转换器的原理如图10.1所示。,图10.1,电阻网络将基准电压转变为相应的电流或电压,在运算放大器的输入端进行总加。放大器的输出则反映了输入数码的大小。如输入数码xp=a12-1+a22-2+ai2-i+an2-n,则:Uo=UNxp=UN(a12-1+a22-2+an2-n)=UNai2-i(10-1)其中,ai是1还是0,取决于输入

3、数码第i位是逻辑1还是逻辑0。如果ai=1,基准电压UN通过模拟切换开关加到电阻网络上;如果a1=0,模拟切换开关断开,基准电压UN不能加到电阻网络上。并行D/A转换器的转换速度很快,只要输入端加入数码信号,输出端立即有相应的模拟电压输出。,ui=1,在并行D/A转换器中,最常用的电阻网络是“T”形网络。12位T形网络D/A转换器原理如图10.2所示。它由12个串联分路开关、27个精密电阻和一个运算放大器组成。电阻网络只用R及2R两种规格的电阻。电阻网络的输出接至运算放大器,若反馈电阻Rf的值为3R,则总的输出电压UO为:UO=-U0Rf/Ri=-2/3UNxp3R/2R=-Unxp (10-

4、2)式中Ri运算放大器的输入运算电阻,Ri=2R。,图10.2,因此,当输入二进制码xp为全1,运算放大器输出为-(1-1/212)UN;当输入二进制码xp为全0,则运算放大器输出为0。所以,D/A转换器的输出在0(1-1/212)UN之间变动。,10.2 D/A转换器的主要性能指标,D/A转换器的主要特性指标包括以下几方面:(1) 分辨率: 指最小输出电压(对应的输入数字量只有最低有效位为“1”)与最大输出电压(对应的输入数字量所有有效位全为“1”)之比。如N位D/A转换器,其分辨率为1/(2N-1)。在实际使用中,表示分辨率大小的方法也用输入数字量的位数来表示。,(2) 线性度: 用非线性

5、误差的大小表示D/A转换的线性度。并且把理想的输入输出特性的偏差与满刻度输出之比的百分数定义为非线性误差。(3) 转换精度: D/A转换器的转换精度与D/A转换器的集成芯片的结构和接口电路配置有关。如果不考虑其他D/A转换误差时,D/A的转换精度就是分辨率的大小,因此要获得高精度的D/A转换结果,首先要保证选择有足够分辨率的D/A转换器。同时D/A转换精度还与外接电路的配置有关,当外部电路器件或电源误差较大时,会造成较大的D/A转换误差,当这些误差超过一定程度时,D/A转换就产生错误。在D/A转换过程中,影响转换精度的主要因素有失调误差、增益误差、非线性误差和微分非线性误差。,(4) 建立时间

6、: 建立时间是D/A转换速率快慢的一个重要参数,也是D/A转换器中的输入代码有满度值的变化时,其输出模拟信号电压(或模拟信号电流)达到满刻度值/2LSB(或与满刻度值差百分之多少)时所需要的时间。不同型号的D/A转换器,其建立时间也不同,一般从几个毫微秒到几个微秒。若输出形式是电流的,其D/A转换器的建立时间是很短的;若输出形式是电压的,其D/A转换器的主要建立时间是输出运算放大器所需要的响应时间。由于一般线性差分运算放大器的动态响应速度较低,D/A转换器的内部都带有输出运算放大器或者外接输出放大器的电路(如图10.3所示),因此其建立时间比较长。,图10.3,(5) 温度系数: 在满刻度输出

7、的条件下,温度每升高1,输出变化的百分数定义为温度系数。(6) 电源抑制比: 对于高质量的D/A转换器,要求开关电路及运算放大器所用的电源电压发生变化时,对输出电压影响极小。通常把满量程电压变化的百分数与电源电压变化的百分数之比称为电源抑制比。(7) 工作温度范围: 一般情况下,影响D/A转换精度的主要环境和工作条件因素是温度和电源电压变化。由于工作温度会对运算放大器加权电阻网络等产生影响,所以只有在一定的工作范围内才能保证额定精度指标。较好的D/A转换器的工作温度范围在-4085之间,较差的D/A转换器的工作温度范围在070之间。多数器件其静、动态指标均,在25的工作温度下测得的,工作温度对

8、各项精度指标的影响用温度系数来描述,如失调温度系数、增益温度系数、微分线性误差温度系数等。(8) 失调误差(或称零点误差): 失调误差定义为数字输入全为0码时,其模拟输出值与理想输出值之偏差值。对于单极性D/A转换,模拟输出的理想值为零伏点。对于双极性D/A转换,理想值为负域满量程。偏差值的大小一般用LSB的份数或用偏差值相对满量程的百分数来表示。(9) 增益误差(或称标度误差): D/A转换器的输入与输出传递特性曲线的斜率称为D/A转换增益或标度系数,实际转换的增益与理想增益之间的偏差称为增益误差。增益误差在消除失调误差后用满码(全1),输入时其输出值与理想输出值(满量程)之间的偏差表示,一

9、般也用LSB的份数或用偏差值相对满量程的百分数来表示。(10) 非线性误差: D/A转换器的非线性误差定义为实际转换特性曲线与理想特性曲线之间的最大偏差,并以该偏差相对于满量程的百分数度量。在转换器电路设计中,一般要求非线性误差不大于1/2LSB。,10.3 DAC 0832 D/A转换器10.3.1 DAC 0832的结构,DAC 0832是美国数据公司的8位双缓冲D/A转换器,片内带有数据锁存器,可与通常的微处理器直接接口。电路有极好的温度跟随性。使用CMOS电流开关和控制逻辑来获得低功耗和低输出泄漏电流误差。其主要技术指标如下:电流建立时间1s单电源+5+15VVREF输入端电压25V分

10、辨率8位功率耗能200mW最大电源电压VDD17V,DAC0832的逻辑结构如图10.4所示,引脚信号如图10.5所示。,图10.4,图10.5,DAC0832由8位输入锁存器,8位DAC寄存器8位D/A转换电路组成。当ILE为高电平,CS为低电平,WR1为负脉冲时,在LE1产生正脉冲;LE1为高电平时,输入寄存器的状态随数据输入线状态变化,LE1的负跳变将输入数据线上的信息存入输入寄存器。图10.60832的电压输出电路当XFER为低电平,WR2输入负脉冲时,则在LE2产生正脉冲;LE2为高电平时,DAC寄存器的输入与输出寄存器的状态一致,LE2的负跳变,输入寄存器内容存入DAC寄存器。DA

11、C 0832的输出是电流型的。在微机系统中,通常需要电压信号,电流信号和电压信号之间的转换可由运算放大器实现,原理如图10.6所示。,图10.6,10.3.2 DAC 0832工作方式,根据对DAC 0832的输入锁存器和DAC寄存器的不同的控制方法,DAC 0832有如下3种工作方式:(1) 单缓冲方式: 此方式适用于只有一路模拟量输出或几路模拟量非同步输出的情形。方法是控制输入寄存器和DAC寄存器同时接收数据,或者只用输入寄存器而把DAC寄存器接成直通方式。(2) 双缓冲方式: 此方式适用于多个DAC 0832同时输出的情形。方法是先分别使这些DAC 0832的输入寄存器接收数据,再控制这

12、些DAC 0832同时传送数据到DAC寄存器以实现多个D/A转换同步输出。,(3) 直通方式: 此方式适用于连续反馈控制线路中。方法是:数据不通过缓冲存储器,即WR1,WR2,XFER,CS均接地,ILE接高电平。此时必须通过I/O接口与CPU连接,以匹配CPU与D/A的转换。DAC 0832的外部连接线路如图10.7所示,由于0832内部已有数据锁存器,所以在控制信号作用下,可以对总线上的数据直接进行锁存。在CPU执行输出指令时,WR1 和 CS 信号处于有效电平。,图10.7,要使DAC 0832实现一次D/A转换,可采用以下程序,程序中假设要转换的数据放在4000H单元中。MOVBX,4

13、000HMOVAL,BX;数据送AL中MOVDX,PORTA;PORTA为D/A转换器端口号OUTDX,AT在实际应用中,经常需要用到一个线性增长的电压去控制某一个检测过程或者作为扫描电压去控制一个电子束的移动。为了说明D/A转换器的应用,我们来看一下怎样利用D/A转换器产生一个锯齿电压。,对于图10.6的电路,为产生一个锯齿电压,可采用以下程序:ROTATE:MOVDX,PORTA;PORTA为D/A转换器端口号MOVAL,0FFH;初值为0FFHINCALOUTDX,AL ;往D/A转换器输出数据JMPROTATE实际上,上面程序在执行时得到的输出电压会有256个小台阶,不过,宏观看,仍为

14、连续上升的锯齿波。对于锯齿波的周期,可以利用延迟进行调整。延迟的时间如果比较短,那么,就可以用几条NOP指令来实现,如果比较长,则可用延迟子程序。比如,下面的程序段就是利用延迟子程序来控制锯齿波周期的。,ROTATE:MOVDX,PORTA;PORTA为D/A转换器端口号MOVAL,0FFH;初值为0FFHROTATE:INCALOUTDX, AL;往D/A转换器输出数据CALLDELAY ;调用延迟子程序JMPDX,ROTATEPMOV DX,DATA ;往CX中送延迟常数DELAY: LOOP DELAYRET,10.4 A/D转换器主要性能指标,A/D转换器是将模拟量转换成数字量的器件,

15、模拟量可以是电压、电流等信号,也可以是声、光、压力、温度、湿度等随时间连续变化的非电的物理量。非电量的模拟量可通过适当的传感器(如光电传感器、压力传感器、温度传感器)转换成电信号。A/D转换器主要性能指标有以下几方面。 1. 分辨率分辨率表示转换器对微小输入量变化的敏感程度,通常用转换器输出数字量的位数来表示。例如,对8位A/D转换器,其数字输出量的变化范围为0255,当输入电压满刻度为5V时,转换电路对输入模拟电压的分辨能力为5V/25519.6mV。目前常用的A/D转换集成芯片的转换位数有8位、10位、12位和14位等。,2. 精度A/D转换器的精度是指与数字输出量所对应的模拟输入量的实际

16、值与理论值之间的差值。A/D转换电路中与每个数字量对应的模拟输入量并非是单一的数值,而是一个范围,如图10.8(a)所示。,图10.8,图中的大小,在理论上取决于电路的分辨率。例如,对满刻度输入电压为5V的12位A/D转换器,为1.22mV。定义为数字量的最小有效位LSB。但在外界环境的影响下,与每一数字输出量对应的输入量实际范围往往偏离理论值。精度通常用最小有效位LSB的分数值来表示。在图10.(a)中,设的中点为A,如果输入模拟量在A/2的范围内,产生唯一的数字量D,则这时称转换器的精度为0LSB。若模拟量变化范围的上限值和下限值各增减/4,转换器输出仍为同一数码D,则称其精度为1/4LS

17、B,如图10.8(b)所示。如果模拟量的实际变化范围如图10.8(c)所示,这时称其精度为1/2LSB。目前常用的A/D转换集成芯片的精度为1/42LSB。,3. 转换时间完成一次A/D转换所需要的时间,称为A/D转换电路的转换时间。目前,常用的A/D转换集成芯片的转换时间约为几个s200s。在选用A/D转换集成芯片时,应综合考虑分辨率、精度、转换时间、使用环境温度以及经济性等诸因素。12位A/D转换器适用于高分辨率系统;陶瓷封装A/D转换芯片适用于-25+85或-55+125,塑料封装芯片适且于070。4. 温度系数和增益系数这两项指标都是表示A/D转换器受环境温度影响的程度。一般用每摄氏度

18、温度变化所产生的相对误差作为指标,以ppm/为单位表示。,5. 对电源电压变化的抑制比A/D转换器对电源电压变化的抑制比(PSRR)用改变电源电压使数据发生1LSB变化时所对应的电源电压变化范围来表示。,10.5 A/D转换器工作原理,ADC是把模拟量(通常是模拟电压)信号转换为n位二进制数字量信号的电路。这种转换通常分4步进行:采样保持量化编码前两步在采样保持电路中完成,后两步在A/D转换过程中同时实现。,10.5.1 采样,所谓采样,是将一个时间上连续变化的模拟量转换为时间上断续变化的(离散的)模拟量。或者说,采样是把一个时间上连续变化的模拟量转换为一个串脉冲,脉冲的幅度取决于输入模拟量,

19、时间上通常采用等时间间隔采样。采样过程的示意图如图10.9所示。,图10.9,采样器相当于一个受控的理想开关,s(t)=1时,开关闭合,fs(t)=f(t);s(t)=0时开关断开,fs(t)=0。如用数字逻辑式表示,即为:fs(t)=f(t)s(t),s(t)=1或0,也可用波形图表示,如图10.10(a),(b),(c)所示。从波形图可见,在s(t)=1期间,输出跟踪输入变化,相当于输出把输入的“样品”采下来了。所以也可把采样电路叫做跟踪电路。,图10.10,10.5.2 保持,所谓保持,就是将采样得到的模拟量值保持下来,即是说,s(t)=0期间,使输出不是等于0,而是等于采样控制脉冲存在

20、的最后瞬间的采样值,如图10.10(d)所示。可见,保持发生在s(t)=0期间。最基本的采样保持电路如图10.11所示。它由MOS管采样开关T、保持电容Cb和运放做成的跟随器三部分组成。s(t)=1时,T导通,vi向Cb充电,vC和v0跟踪vi变化,即对vi采样。 s(t)=0时,T截止,v0将保持前一瞬间采样的数值不变。只要Cb的漏电电阻、跟随器的输入电阻和MOS管T的截止电阻都足够大,大到可忽略Cb的放电电流的程度,v0就能保持到下次采样脉冲到来之前而基本不变。实际中进行A/D转换时所用的输入电压,就是这种保持下来的采样电压,也就是每次采样结束时的输入电压。,图10.11,所谓量化,就是用

21、基本的量化电平q的个数来表示采样保持电路得到的模拟电压值。这一过程实质上是把时间上离散而数字上连续的模拟量以一定的准确度变为时间上、数字上都离散的、量级化的等效数字值。量级化的方法通常有两种:只舍不入法和有舍有入法(四舍五入法)。这两种量化法的示意图如图10.12(a)和图10.12(b)所示。图10.12(c)给出了一个用只舍不入法量化的实例。从图中可看出,量化过程也就是把采样保持下来的模拟值舍入成整数的过程。显然,对于连续变化的模拟量,只有当数值正好等于量化电平的整数倍时,量化后才是准确值,如图,10.5.3 量化和编码,10.12(c)中T1,T2,T4,T6,T8,T11,T12时刻所

22、示。不然,量化的结果都只能是输入模拟量的近似值。这种由于量化而产生的误差,称之为量化误差,它直接影响了转换器的转换精度。量化误差是由于量化电平的有限性造成的,所以它是原理性误差,只能减小,而无法消除。为减小量化误差,根本的办法是取小的量化电平。另外,在量化电平一定的情况下,一般采用四舍五入法带来的量化误差只是只舍不入法引起的量化误差的一半。编码就是把已经量化的模拟数值(它一定是量化电平的整数倍)用二进制数码、BCD码或其他码来表示,比如用二进制来对图10.12(c)的量化结果进行编码,则可得到图中所示的编码输出。至此,即完成了A/D转换的全过程,将各采样点的模拟电压转换成了与之一一对应的二进制

23、数码。,图10.12,实现A/D转换的方法很多,常用的有逐次逼近法、双积分法及电压频率转换法等。1. 逐次逼近法A/D转换器逐次逼近法A/D转换是一个具有反馈回路的闭路系统。A/D转换器可划分成3大部分:比较环节、控制环节、比较标准(D/A转换器)。图10.13就是逐次逼近法A/D转换器的原理电路。其主要原理为:将一个待转换的模拟输入信号VIN与一个“推测”信号V1相比较,根据推测信号是大于还是小于输入信号来决定减小还是增大该推测信号,以便向模拟输入信号逼近。推测信号由D/A变换器的输出获得,当推测信号与模拟输入信号“相等”时,向D/A转换器输入的数字即为对应的模拟输入的数字。,图10.13,

24、其“推测”的算法是这样的,它使二进制计数器中的二进制数的每一位从最高位起依次置1。每接一位时,都要进行测试。若模拟输入信号VIN小于推测信号V1,则比较器的输出为零,并使该位置零;否则比较器的输出为1,并使该位保持1。无论哪种情况,均应继续比较下一位,直到最末位为止。此时在D/A变换器的数字输入即为对应于模拟输入信号的数字量,将此数字输出,即完成其A/D转换过程。2. 双积分法A/D转换器双积分法A/D转换器由电子开关、积分器、比较器和控制逻辑等部件组成。如图10.14(a)所示。双积分法A/D转换器是将未知电压VX转换成时间值来间接测量的,所以双积分法A/D转换器也叫做T-V型A/D转换器。

25、,图10.14,在进行一次A/D转换时,开关先把VX采样输入到积分器,积分器从零开始进行固定时间T的正向积分,时间T到后,开关将与VX极性相反的基准电压VREF输入到积分器进行反相积分,到输出为零伏时停止反相积分。图10.14(b)所示的积分器输出波形可以看出:反相积分时积分器的斜率是固定的,VX越大、积分器的输出电压越大、反相积分时间越长。计数器在反相积分时间内所计的数值就是与输入电压VX在时间T内的平均值对应的数字量。由于这种A/D要经历正、反两次积分,故转换速度较慢。,3. 电压频率转换法A/D转换器(1) VFC模/数转换器工作原理: VFC(电压频率转换器)构成模/数转换器时,由计数

26、器、控制门及一个具有恒定时间的时钟门控制信号组成。图10.15示出VFC型A/D转换装置的流程图和波形。当电压Vi加至VFC的输入端后,便产生频率f与Vi成正比的脉冲。该脉冲通过由时钟控制的门,在单位时间T内由计数器计数。计数器在每次计数开始时,原来的计数值被清零。这样,每个单位时间内,计数器的计数值就正比于输入电压Vi,从而完成A/D变换。,图10.15,当VFC的满度频率已知时,A/D转换周期为:T=N/F(10-3)式中NA/D转换器最大输出计数值;FVFC的满度频率。VFC与微型机结合起来,可方便的构成多位高精度的A/D转换器,且具有如下特点: VFC价格不高。用它构成的A/D转换器,

27、在零点漂移及非线性误差等方面,性能均优于逐次逼近式A/D转换器。 VFC输出频率为f的脉冲信号,只需要两根传输线就可进行传送。用这种方式对生产现场的信号进行采样和远距离传输都很方便,且传输过程中的抗干扰能力强。, VFC的输入量为模似信号Vi输出的是脉冲信号,只需采用光耦合器传输脉冲信号,便可实现模似输入信号Vi和计算机系统之间的隔离。 由于VFC的工作过程具有积分特性,因此在构成A/D转换器时,对噪声具有良好的滤波作用。所以,采用VFC进行A/D转换时,其输入信号的滤波环节可简化。采用VFC构成A/D转换器的缺点是转换速度较慢。为了克服这一缺点,可采用如下措施:(a) 采用高频VFC。若采用

28、5MHz的VFC构成10位A/D转换器,则最大转换 时间只需200s,这就进入了中速A/D转换的行列。(b) 在多微机系统中,利用单片机与VFC构成A/D转换器。由于系统是多机同时工作,即在同一时间内,系统可实现多功能的控制运算,这就解决了实时控制中在速度上的矛盾。,(2) 电压频率变换器(VFC)的传输特性: VFC是输出信号频率正比于输入电压数值的线性变换器,其传输特性(如图10.16所示)可由下式表示: f=KVi(10-4)式中 f变换器输出信号频率;Vi变换器输入电压;K变换器的增益。VFC具有如下主要指标:,图10.16, 频率范围:是指在额定输入电压范围内的输出脉冲频率范围,通常

29、分010kHz,0100kHz,01MHz三种。近年来,国外已生产出输出频率为05MHz的VFC模块(如美国TP公司生产的4707)。 模拟输入电压范围:变换器额定输入电压的范围,一般为010V,该输入值通常还允许超出量程10%100%。 输入阻抗:输入端对地的等效电阻,该值一般在10100k之间。 非线性误差:一般用相对满量程的百分数表示,通常在0.0.001%之间。 满程稳定性:包括满程温度系数、时间漂移、电源电压灵敏度部分。其中温度系数是主要的,一般几十几百ppm(即百万分之几)/的数量级。, 工作电压:一般是15V,其可变化范围为12V。 电源电流:该指标实际上表示了器件的功耗。正负电

30、源电流一般为几mA到2030mA。 工作温度:通常要求VFC模块在0+70范围内能正常工作。,10.6 ADC 0809 A/D转换器 10.6.1 ADC 0809的结构,ADC 0809是National半导体公司生产CMOS材料的A/D转换器。它是具有8个通道的模拟量输入线,可在程序控制下对任意通道进行A/D转换,得到8位二进制数字量。其引脚如图10.17所示。其主要技术指标如下:电源电压6.5V分辨率8位时钟频率640kHz转换时间100s未经调整误差1/2LSB和1LSB模拟量输入电压范围05V功耗15mW,图10.17,图10.18为ADC 0809内部原理框图,片内有8路模拟开关

31、、模拟开关的地址锁存与译码电路、比较器、256R电阻T型网络、树状电子开关、逐次逼近寄存器SAR、三态输出锁存缓冲存储器、控制与时序电路等。ADC 0809通过引脚IN0,IN1,IN7可输入8路单边模拟输入电压。ALE将3位地址线ADDA,ADDB,ADDC进行锁存,然后由译码器选通8路中的一路进行A/D转换。对于片内的256R电阻T型网络和电子开关树,为了简化问题,以2位A/D变换器为例加以说明。此时只需224R的电阻网络。图10.19示出了4R电阻网络及相应的开关树。,图中VST输出的大小,除了与VREF输入电压的大小有关外,还与开关树内各个开关的合、断状态有关。开关的合断又取决于一个二

32、进制数字D1D0。D1控制右边两个开关S10和S11:当D1=1时,上面的开关S10闭合而下面的开关S11断开;当D1=0时,则反之。D0控制左边4个开关S00S03;当D0=1时,S00和S02闭合而S01和S03断开;当D0=0时,则反之。由此可见,这部分电路相当于一个D/A转换器。,图10.18,图10.19,可见,VST电压的大小取决于输入的数字量D1D0。8位的情况与此类似。SAR(逐次逼近寄存器)和比较器的工作原理如下:在变换前,SAR为全零。变换开始,先使最高位为1,其余位仍为0,此“数字”控制开关树中开关的合、断,开关树的输出VST和模拟量输入VIN一起输入比较器进行比较。如果

33、VSTVIN,则比较器输出为0,SAR的最高位置0;如果VSTVIN,则比较器输出为1,SAR的最高位保持1。此后的SAR的下一个最高位置1,其余较低位仍为0,而上一次比较过的最高位保持原来值。再将VST和VIN比较,重复上述过程,直至最低位比较完为止。,比较完毕后,SAR的数字送入三态输出锁存器。三态输出锁存器输出的2-8,2-7,2-1中2-1对应于数字量最高位的D7,2-8对应于最低位D0。OE端为输出允许信号,当OE端出现高电平时,将三态输出锁存器中的数字量放在数据总线上,以供CPU读入。START和EOC分别为启动信号和变换结束信号,EOC用来申请中断。,10.6.2 ADC 080

34、9与系统总线的连接,由于ADC 0809芯片输出端具有可控的3态输出门,因此与系统总线连接非常简单,即直接和系统总线相连,由读信号控制3态门,在转换结束后,CPU通过执行一条输入指令,而产生读信号,将数据从A/D转换器取出。ADC 0809与系统总线连接如图10.20所示。,图10.20,在图中用微机系统的地址线通过译码器输出端作为ADC 0809的片选信号。以M/IO,WR和地址译码输出信号的组合作为启动信号START和地址锁存信号ALE。以M/IO,RD和地址信号的组合信号作为输出允许信号OUTPUTENABLE。通道地址线ADDA,ADDB,ADDC分别接到数据总线的低3位上。当计算机向

35、ADC 0809芯片执行一条输出指令时,M/IO WR 和地址信号同时有效,地址锁存信号ALE将出现在数据总线上的模拟通道地址锁入ADC 0809的地址锁存器中,START信号启动芯片开始A/D转换。当计算机按上述芯片地址执行一条输入指令时,M/IO,RD和地址信号同时有效,这时输出允许OUTPUT ENABLE有效,ADC 0809的输出三态门被打开,已转换好的数据就出现在数据总线上。,ADC 0809的时钟频率为640kHz,转换时间为100s,微机的时钟频率5MHz或更高一些,因此系统时钟必须经分频器分频后接到ADC 0809芯片的CLOCK引脚上。另外,ADC 0809的EOC端可在转

36、换结束时发中断请求脉冲,若用中断输入数据的方式则可利用EOC引线。例如,假设DAC0809端口地址为PORCT,要把3通道的模拟量转换成数字量送到AL寄存器中,则只需执行下列程序即可。START:MOVAL,03HOUTPORCT,AL;送通道地址CALLDELAY;调延时子程序INAL,PORCT;读取转换数字量,10.7 AD 570 A/D转换器10.7.1 AD 570的结构,AD 570是AD公司生产的8位逐次逼近型A/D转换芯片,它将D/A转换电路、基准电压、时钟、比较器、逐次逼近寄存器以及输出缓冲存储器等集成在一块芯片上,并具有三态输出。在一般情况下,无需加任何外部电路,只要接上

37、+5V及-15V电源,加上模拟输入,给出启动转换信号,即可实现8位A/D转换。AD 570的主要特性指标如下:分辨率8位转换时间25s转换精度2LSB输入信号单级性或双极性,电源+5V及-15V内含基准电源AD 570引脚排列如图10.21所示。,图10.21,AD 570可由+5V(V)及-15V(V)供电,输入模拟电压可以是单极性0至+10V,或者是双极性+5V至-5V。输入电压极性可由BIP OFF引脚的连接方式而定。单极性输入时BIP OFF接地,双极性输入时应悬空或接+5V电源。B/C是启动转换信号,该信号变低电平时开始进行转换,转换结束时,当DR端变为低电平时,微处理器可将数据取走

38、,其时序如图10.22所示。,图10.22,在AD 570由微处理器控制的情况下,可在初始化程序中将BC端置为高电平,DR端的状态由芯片内部决定,其初始状态也是高电平,此时输出总线处于高阻状态。当B/C端输入一低电平信号后,AD 570便开始转换。此时,DR端及输出端状态不变,经25s后转换结束,DR端变低,延时500ns后,数据线上出现转换后的数据。当微处理器取完数据后转换命令可撤去,B/C置高电平。在B/C变化后的1.5s,DR线随之自动变高,同时数据线呈现高阻,一次转换即完成。注意:上次B/C命令撤除与下一次给出新的转换命令之间的时间间隔不得小于2s,如果在转换进行期间B/C线变高,那么

39、这次转换就停止,而且DR与数据线状态不变。,10.7.2 AD 570工作方式,A/D转换结束时,A/D转换芯片会输出转换结束信号,通过CPU读取转换数据。CPU一般可以采用4种方式和A/D转换器进行联络来实现对转换数据的读取。第1种是程序查询方式。这种方式的思想就是在启动A/D转换器工作以后,程序不断读取A/D转换结束信号,如果发现结束信号有效,则认为完成一次转换,因而用输入指令读取数据。第2种是中断方式。用这种方式时,把转换结束信号作为中断请求信号,送到中断控制器的中断请求输入端。,实际上,有一些A/D转换芯片正是用INTR来标出转换结束信号端的。第3种是CPU等待方式。这种方式利用CPU

40、的READY引脚的功能,设法在A/D转换期间使READY处于低电平,以使CPU停止工作,转换结束时,则使READY成为高电平,CPU读取转换数据。第4种是固定的延迟程序方式。用这种方式时,要预先精确地知道完成一次A/D转换所需要的时间。这样,CPU发出启动命令之后,执行一个固定的延迟程序,此程序执行完时,A/D转换也正好结束,于是,CPU读取数据。,如果A/D转换的时间比较长,或者有几件事情需要CPU处理,那么,用中断方式效率比较高,因为用这种方式时,在A/D转换期间,CPU可以处理其他事情。但是,如果A/D转换时间比较短,那么,中断方式就失去了优越性,因为响应中断、保留现场、恢复现场、退出中

41、断这一系列环节所花去的时间将和A/D转换的时间相当,所以,此时可用3种非中断方式之一来实现转换数据的读取。AD 570与系统总线的连接如图10.23所示。,图10.23,在AD570和系统总线之间连接了并行接口8255A。8255A的端口A连接A/D转换器的数据端,工作在输入方式。端口B也工作在输入方式,PB0和转换结束信号DR相连,因此,用程序读取PB0的值并进行判断,便可得知A/D转换是否完成。端口C工作在输出方式,PC0连接A/D转换芯片的启动信号端B/C。在工作时,CPU用输出指令将PC0置为0,这样,使AD570的B/C端得到一个低电平,从而启动转换。此后,用输入指令不断读取端口B的

42、数据,并进行测试,以判断PB0是否为0,如PB0为0,则说明完成一次A/D转换,故CPU可从端口A读取转换结果,否则继续进行查询。,下面就是用查询方式读取转换结果的程序段:READAD: MOVAL,92H;方式字,使端口A,B为输入方式,端口C为输出方式 OUTPORTCT,AL; PORTCT为控制口地址,设方式字 MOVAL,01 OUT PORTC,AL; 使PC0为1,PORTC为C端口地址MOVAL,00OUT PORTC,AL; 使PC0为0,启动A/D转换W:INAL,PORTB; 读取端口B中的状态RCRAL,01; 读PB为1,则再查询JCWMOVAL,01OUTPORTC

43、,AL; 使PC为1,撤消启动信号INAL,PORTA; 读取转换数据,图10.24是用AD570作为A/D转换芯片、CPU工作于等待方式的电路图。8255A仍连接在系统总线和A/D转换器之间,8255A的端口A工作于输入方式,用来传递转换结果,端口C工作于输出方式,用PC连接AD570的启动信号端B/C。,图10.24,在A/D转换期间,B/C为低电平,DR为高电平,门1及门2使READY端处于低电平,于是CPU便处于等待状态。A/D转换结束时,DR转为低电平,作为结束标志,使READY端成为高电平。此时CPU便可读取A/D转换结果。在等待工作方式时,CPU的程序更为简单,只要对8255A设

44、置方式字,并将PC0置零来启动;转换后用一条输入指令来读取转换结果。,习题10.1 什么是A/D,D/A转换器?10.2 A/D和D/A转换器在微型计算机应用中起什么作用?10.3 D/A转换器的主要参数有哪几种?参数反映了D/A转换器什么性能?10.4 A/D转换器的主要参数有哪几种?参数反映了A/D转换器什么性能?10.5 分辨率和精度有什么区别?10.6 DAC 0832有哪几种工作方式?每种工作方式适用于什么场合?每种方式用什么方法产生的?10.7 ADC把模拟量信号转换为数字量信号,转换步骤是什么?转换过程用到什么电路?10.8 ADC与微处理器接口的基本任务是什么?,10.9 ADC中的转换结束信号(EOC)起什么作用?10.10 如果0809与微机接口采用中断方式,EOC应如何与微处理器连接?程序又有什么改进?,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号