第十章十一章数模及模数转换_第1页
第十章十一章数模及模数转换_第2页
第十章十一章数模及模数转换_第3页
第十章十一章数模及模数转换_第4页
第十章十一章数模及模数转换_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十章十一章数模及模数转换第1页,课件共73页,创作于2023年2月1.基本概念①D/A转换器框图

不同D/A转换器允许输入的数字量位数不尽相同,有8位、10位、12位等。

第2页,课件共73页,创作于2023年2月②量程:测量仪器的变化范围。对D/A转换器而言,则指其输出模拟量(电压或电流)的变化范围。其最大值称为满量程。③最低有效位(LSB):输入数字量允许变化的最小单位。对D/A转换器来说,输入量是二进制代码,其LSB=1。设输入数字量的位数为n位,转换器的满量程输出为M。模/数转换技术规定:相对于数字量变化的最小单位1LSB,模拟输出量变化的最小单位为△=M/2n。于是有:M=△×2n。注意,数字量的最大输入值为2n-1,其对应的输出模拟量值为△×(2n-1)=△×2n-△=M-△。可见,它比满量程小1个LSB所对应的输出量(M/2n)。第3页,课件共73页,创作于2023年2月2.D/A转换器的主要参数衡量一个D/A转换器的性能的主要参数:①分辨率指D/A转换器的1LSB输入量的变化所对应的输出变化量。通常用D/A转换器能够转换的二进制数的位数或D/A转换器所能分辨的最小电压值来表示。位数多,分辨率就高。

例如,一个D/A转换器能够转换8位二进制数,则其分辩率为8位。若转换后的电压满量程是5V,则它能分辨的最小电压=5V/256=20mV。所以,又可称其分辨率为20mV(即每增减1LSB,输出电压的变化就是20mV)。

如果是10位分辨率的D/A转换器,对同样的转换电压,则它能分辨的最小电压=5V/1024=5mV。可见其分辨率高于8位的D/A转换器。第4页,课件共73页,创作于2023年2月②转换时间

指数字量输入到完成转换.输出达到最终值并稳定为止所需的时间。

电流型D/A转换较快。

电压型D/A转换较慢,取决于运算放大器的响应时间。

一般在几ns到几百µs之内。

③精度指D/A转换器实际输出电压与理论值之间的误差。一般采用数字量的最低有效位作为衡量单位。例如,±1/2LSB。如果分辨率为8位,则它的精度是:±(1/2)(1/256)=±1/512。第5页,课件共73页,创作于2023年2月③精度指D/A转换器实际输出电压与理论值之间的误差。有绝对误差和相对误差两种。前者一般采用数字量的最低有效位作为衡量单位。后者则用:输出量绝对误差/满量程×100%。例如,一个数模转换器精度为±1/2LSB,表示该转换器的实际输出值与其理想输出值间最大偏差为最低有效位所对应的模拟输出值的一半。再如,某分辨率为8位的D/A转换器。其精度为±1/2LSB。如果用相对误差表示其精度,则它的精度是:(±1/2LSB×△)/(△×28)=(±1/2LSB)/28=(±1/2)/28=±1/512。

第6页,课件共73页,创作于2023年2月④线性度

当数字量变化时,D/A转换器输出的模拟量按比例关系变化的程度。理想情况下,D/A转换器输出模拟量与输入数字量的关系应该是线性的,但实际上输出特性并不是理想线性的。我们可以用线性误差来反映线性度。线性误差:在满量程的范围内,实际转换的模拟输出偏离理想输出的最大值。通常,使用(1/n)LSB来给出最大偏差的数值。线性误差越小越好,一般应≤1/2LSB。

第7页,课件共73页,创作于2023年2月3.D/A转换器(DAC)的连接特性①输入缓冲能力DAC是否带有三态输入缓冲器或锁存器来保存输入数字量,这对不能长时间在数据总线上保持数据的微机系统来说至关重要:带有三态输入缓冲器或锁存器的DAC,其输入数据线能与系统数据总线直接连接。反之,需要外接三态缓冲器。②输入数据的宽度DAC有8位、10位、12位、14位等。当DAC的位数(即分辨率)高于微机系统数据总线的宽度时,需分两次输入数字量。第8页,课件共73页,创作于2023年2月③电流型还是电压型

即DAC的输出是电流还是电压。对电流输出型,其电流在几mA到十几mA;对电压输出型,其电压一般在5~10V之间。有些高电压型可达24~30V。若需将电流输出转换成电压输出,则采用运算放大器进行转换。④输入码制DAC能接收不同码制的数字量输入。一般来说:单极性输出的DAC只接收二进制码或BCD码;双极性输出的DAC只接收偏移二进制码或补码。第9页,课件共73页,创作于2023年2月单极性码与偏移码代码111110101100011010001000单极性代码+7+6+5+4+3+2+10偏移码+3+2+10-1-2-3-4可见,单极性码是正数,偏移码是单极性码加上一个偏移量而得(本例的偏移量为-4)。第10页,课件共73页,创作于2023年2月⑤输出模拟量的极性有单极性输出、双极性输出。

对需要正负电压控制的设备,要使用双极性DAC,或在输出电路中采取措施,使输出电压有极性变化。第11页,课件共73页,创作于2023年2月二、D/A转换器与微处理器的接口方法接口的任务主要任务是要解决CPU与DAC之间数据缓冲问题。原因之一在于CPU的输出数据在数据总线上出现的时间很短暂,只有几个时钟周期。因此,D/A转换器接口必须能将数据保存起来供转换之用。原因之二在于,若CPU的数据总线宽度与DAC的分辨率不一致,则需要分两次送数,就必须把先后两次送入的数分别锁存,然后同时送入D/A转换器进行完整的转换。第12页,课件共73页,创作于2023年2月2.接口电路的结构形式

接口电路的实现,可采用中小规模集成电路、GAL器件、通用可编程并行接口芯片。

3.接口电路的实现方法①直接与CPU相连用于DAC自身带有三态输入缓冲器/锁存器的情况。②利用外加三态缓冲器或数据寄存器与CPU相连用于DAC自身不带三态输入缓冲器/锁存器的情况。③利用并行I/O接口芯片与CPU相连。用于DAC自身不带三态输入缓冲器/锁存器的情况第13页,课件共73页,创作于2023年2月注意:这三种接口方法并非彼此无关或一成不变,例如,当CPU的数据总线宽度小于D/A转换器的分辨率时,即使D/A转换器内部带有数据缓冲器,也采用第二种接口形式,并且是两级缓冲,以消除由于两次传送数据而产生的尖锋(毛刺)。另外,在系统中,D/A转换器也是一种微机的外围设备,因此,在实际使用中,无论D/A转换器的内部是否带有数据锁存器,都经常利用并行I/O接口芯片与CPU相连,这样,在时序配合和驱动能力上都容易和CPU一致,使设计简化和调试方便。并增加系统的可靠性。第14页,课件共73页,创作于2023年2月10.2D/A转换器接口电路设计

DAC接口设计应考虑的问题是被控对象DAC的输入缓冲能力和分辨率。从DAC的输入缓冲能力,可分为DAC芯片内有三态输入缓冲器和无三态输入缓冲器;从DAC的分辨率,可分为分辨率≤8位和分辨率>8位。因为这两方面的特性不同,使DAC与系统数据总线的连接方法不同,从而使接口电路的设计也不同。本节以片内有三态输入缓冲器的8位D/A转换器接口芯片DAC0832为例进行介绍。第15页,课件共73页,创作于2023年2月一、DAC0832的连接特性

DAC0832是分辨率为8位的乘法型DAC转换器,内部带有两级缓冲寄存器,它的内部结构和外部引脚如图所示。第16页,课件共73页,创作于2023年2月由图可知,DAC0832内部由二级缓冲寄存器(一个8位输入寄存器和一个8位DAC寄存器)和一个D/A转换器(R-2RT型电阻解码网络)及转换控制电路组成。两个8位输入寄存器可以分别选通,从而使DAC0832实现双缓冲工作方式,即可把从CPU送来的数据先打入输入寄存器,在需要进行转换时.再选通DAC寄存器,实现D/A转换,这种工作方式称为双缓冲工作方式。第17页,课件共73页,创作于2023年2月各引脚功能说明如下:ILE:输入锁存允许信号,输入,高电平有效。CS:片选信号,输入、低电平有效,与ILE共同决定WR1是否起作用。WR1:写信号1,它作为输入寄存器的写选通信号(锁存信号)。WR1必须与CS,ILE同时有效(即当ILE为高电平,WR1和CS同为低电平)时,LE1为高电平,输入寄存器的输出随输入而变化(即输入不锁存)。当WR1变为高电平时,LE1变为低电平,输入数据被锁存在输入寄存器中。输入寄存器的输出不再随外部数据的变化第18页,课件共73页,创作于2023年2月WR2:写信号2,即DAC寄存器的写选通信号。XFER:数据传送控制信号,输入、低电平有效。当XFER与WR2同时为有效(低电平)时.使得LE2=1,8位DAC寄存器的输出随寄存器的输入而变化,WR2上升沿将输入寄存器的信息锁存在DAC寄存器中。DI7-DI0:8位数字量输入端。

IOUT1:DAC电流输出1,它是数字输入端逻辑电平为1的各位输出电流之和。DAC寄存器内容随输入代码线性变化,当DAC寄存器的内容为全1时,IOUT1为最大;DAC寄存器的内容为全0时,IOUT1为最小第19页,课件共73页,创作于2023年2月

IOUT2:DAC电流输出2,

RFB:片内反馈电阻引脚,与外接运算放大器配合构成I/V转换器。

VREF:参考电源或叫基准电源输入端,此端可接一个正电压或一个负电压,范围为:+10V~-10V,由于它是转换的基准,要求电压准确、稳定性好。

VCC:芯片供电电压端.范围为+5V~+15V,最佳值为+15V。

AGND:模拟地,即芯片模拟电路接地点,所有的模拟地要连在一起。

DGND:数字地,即芯片数字电路接地点。所有的数字电路地连地一起。使用时,再将模拟地和数字地连到一个公共接地点,以提高系统的抗干扰能力。第20页,课件共73页,创作于2023年2月对要求多片DAC0832同时进行转换的系统,各芯片的选片信号不同,这样可由选片信号CS与WR1将数据分别输入到每片的输入寄存器中。各片的XFER与WR2分别接在一起,公用一组信号,在XFER与WR2同时为低电平时,数据将在同一时刻由8位输入寄存器传送到对应的8位DAC寄存器,并靠WR2或XFER的上升沿将信号锁存在DAC寄存器中,与此同时,多个DAC0832芯片开始转换,其时间关系如图所示。第21页,课件共73页,创作于2023年2月为保证DAC0832可靠地工作,要求,WR1和WR2的宽度不小于500ns。若VCC=+15V,则宽度为100ns。输人数据的保持时间应不小于90ns。此外,对于不用的数字输入端不能悬空,应根据要求接地或Vcc。

第22页,课件共73页,创作于2023年2月二、DAC0832的三种工作方式:改变几个转换控制信号的时序和电平,就可使DAC0832处于三种不同的工作方式。1.直通方式:直通方式就是使DAC0832内部的两个寄存器(输入寄存器和DAC寄存器)处于不锁存状态,数据一旦到达输入端DI7一DI0就直接送人D/A转换器,被转换成模拟量。输入数据变化,D/A转换器的输出模拟量跟着变化。为实现直通方式,必须使ILE为高电平,CS

,WR1,WR2和XFER端都须接数字地,这时锁存信号LE1,LE2均为高电平.输入寄存器和DAC寄存器便均处于不锁存状态,即直通方式。第23页,课件共73页,创作于2023年2月2.单缓冲方式:单缓冲方式就是使两个寄存器中的一个处于直通方式,另一个处于锁存方式,输入数据只经过一级缓冲器送入D/A转换器,通常的做法是将WR2和XFER均接地,使DAC寄存器处于直通方式,而把ILE接高电平,CS接端口地址译码信号,WR1接CPU系统总线的IOW信号,使输入寄存器处于锁存方式,这样便可通过执行一条OUT指令.选中该端口,使CS和WR1有效,从而启动D/A转换。单缓冲方式只需执行一次写操作即可完成D/A转换。一般当不需要多个模拟量同时输出时.可采用单缓冲方式。

第24页,课件共73页,创作于2023年2月3.双缓冲方式:双缓冲方式就是使输入寄存器和DAC寄存器均处于锁存状态,数据要经过两级锁存(即两级缓冲)后再送入D/A转换器,这就是说,要执行两次写操作才能完成一次D/A转换。利用双缓冲方式可在D/A转换的同时,进行下一个数据的输入,这样可有效地提高转换速度。只要将ILE接高电平,WR1和WR2接CPU的IOW,CS和XFER分别接两个不同的I/O地址译码信号。当执行OUT指令时,WR1和WR2均变为有效低电平。这样,可先执行一条OUT指令.选中CS端口.把数据写入输入寄存器;再执行第二条OUT指令,选中XFER端口,把输入寄存器内容写入DAC寄存器,实现D/A转换。第25页,课件共73页,创作于2023年2月下图所示为DAC0832工作于双缓冲方式下,与具有8位数据总线的微处理器相连的逻辑图。第26页,课件共73页,创作于2023年2月将一个数据经两次锁存,通过D/A转换器输出模拟量的控制程序段如下:

MOVDX.320H:指向输入寄存器

MOVAL,DATA;DATA为被转换的数据

OUTDX,AL;输入数据打入输入寄存器

INCDX;指向DAC寄存器

OUTDX,AL;选通DAC寄存器启动D/A转换双缓冲方式,除用作上述的单路D/A转换外,更主要的应用是适用于要求同时输出多个模拟量的场合,这时要用多片DAC0832芯片组成模拟输出系统,每片对应一个模拟量。这时,利用双缓冲功能,可先用多条输出指令把要转换的数据分别打入各DAC的输入寄存器,当数据就绪后,再由一个转换命令(即执行一次写操作)同时启动多个DAC的转换。第27页,课件共73页,创作于2023年2月三、设计举例

例1:采用单缓冲方式,通过DAC0832输出产生三角波,三角波最高电压5V,最低电压0V。⑴电路设计所要考虑的问题①从CPU送来的数据能否被保存DAC0832内部有二级锁存寄存器,从CPU送来的数据能被保存,不用外加锁存器可直接与CPU数据总线相连。第28页,课件共73页,创作于2023年2月②二级输入寄存器如何工作

按题意采用单缓冲方式,即经一级输入寄存器锁存。假设我们采用第一级锁存,第二级直通,那么第二级的控制端WR2和XFER应处于有效电平状态,使第二级锁存寄存器一直处于打开状态。第一级寄存器具有锁存功能的条件是ILE、CS、WR1都要满足有效电平。为减少控制线条数,可使ILE一直处于高电平状态,控制WR1和CS端。电路连接如图所示。第29页,课件共73页,创作于2023年2月③输出电压极性按题意输出波形变化范围为0V~5V,需单极性电压输出第30页,课件共73页,创作于2023年2月⑵软件设计所要考虑的问题①单缓冲方式下输出数据的指令仅需一条输出指令即可。上图所示CS端与译码电路的输出端相连,其地址值既是选中该DAC0832芯片的片选信号,也是第一级寄存器打开的控制信号。另外由于CPU的控制信号WR与DAC0832的写信号WR1相连,当执行OUT指令时,

CPU使WR1写信号有效,与CS信号一起,打开第一级寄存器,输人数据被锁存。设DA0832地址为0300H,输出0V电压程序如下:

MOVAL,00H

;设置输出电压值MOVDX,0300H;DAC0832片选地址OUTDX,AL

;输出数据.使DAC0832输出

;端得到0V模拟电压输出第31页,课件共73页,创作于2023年2月②按题意产生三角波电压范围为0V~5V,那么所对应输出数据00H~0FFH。所以三角波上升部分,从00H起加1,直到FFH。三角波下降部分从FFH起减1,直到00H,流程图如下。第32页,课件共73页,创作于2023年2月第33页,课件共73页,创作于2023年2月例2:采用直通方式,利用DAC0832产生锯齿波,波形范围为0V~5V。

分析:

(1)由于采用直通方式.即DAC0832的8位输入寄存器、8位DAC寄存器一直处于直通状态,因此要求控制端ILE接高电平,CS、WR1、WR2、XFER接地。第34页,课件共73页,创作于2023年2月(2)由于采用直通方式,CPU输出的数据可直接到达DAC0832的8位D/A转换器进行转换。在这种情况下,如果还是把DAC0832D/A转换器的数据输入端直接连在CPU数据总线上,会造成CPU数据总线上只能有D/A转换所需要的数据流。数据总线上的任何数据都会导致D/A进行变换和输出,这在实际工程中是不可能的。因而DAC0832D/A转换器的数据输入端不能直接连在CPU数据总线上。来自CPU数据总线上的数据必须经锁存后才能传送到DAC0832D/A转换器的输入端。本题采用将DAC0832数据输入端连接到8255A的A口,通过8255A的A口将来自CPU的数据锁存。第35页,课件共73页,创作于2023年2月设8255A的A、B、C及控制口地址分别为04A0H、04A2H、04A4H、04A6H。可用A2、A1作8255A片内端口寻址。用A15~A3、A0配合AEN实现对8255A的片选。第36页,课件共73页,创作于2023年2月(3)波形范围为0V-5V,单极性输出。

(4)锯齿波上升部分,采用数据值加1的方法,使输出数据由00H变化到FFH。在开始一个新的锯齿波时,不采用重新赋00H的方法,而是由上一锯齿波对应的最大数据FFH加1自动变为00H。

第37页,课件共73页,创作于2023年2月程序段:MOVDX,04A6H;8255A控制口地址送DXMOvAL,80H;设置8255A工作方式字OUTDX,ALMOVDX,04A0H;设置8255A的A口地址MOVAL,00H;输出电压0V对应的数值AA1:OUTDX,ALINCAL;数值加1JMPAA1第38页,课件共73页,创作于2023年2月10.3A/D转换器接口基本原理与方法A/D转换器是用来通过一定的电路将模拟量转变为数字量。在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。A/D转换后,输出的数字信号可以有8位、10位、12位和16位等。第39页,课件共73页,创作于2023年2月A/D转换器按转换原理可分为直接A/D转换器和间接A/D转换器。所谓直接A/D转换器,是把模拟信号直接转换成数字信号间接A/D转换器是先把模拟量转换成中间量,然后再转换成数字量,如电压/频率转换型有些转换器还将多路开关、基准电压源、时钟电路、二十译码器和转换电路集成在一个芯片内,已超出了单纯A/D转换功能,使用十分方便。第40页,课件共73页,创作于2023年2月一、A/D转换器及其连接特性1.A/D转换器的主要参数(1)分辨率指A/D转换器可转换成二进制数的位数。例如:10位A/D转换器,转换一个满量程为5V(指转换器输出的最大数值与5V电压对应)的电压,则它能分辨的最小电压为5000mV/1024≈5mV。小于5mV的电压,A/D转换器将无法转换。同样5V电压,若采用12位A/D转换器。则它能分辨的最小电压为5000mV/4096≈1mV。可见A/D转换器的数字量输出位数越多,其分辨率就越高。第41页,课件共73页,创作于2023年2月(2)转换时间指从输入启动转换信号开始到转换结束,得到稳定的数字输出量为止的时间。(3)量程量程是指所能转换的输人电压范围。其它参数与D/A转换器类似。第42页,课件共73页,创作于2023年2月2.A/D转换器的外部特性

A/D转换芯片产品型号繁多、引脚命名不统一。

A/D转换芯片一般具有以下输入输出信号线。①转换启动线(输入):它是由系统控制器发出的一种控制信号,此信号一到,立即开始一次A/D转换。②转换结束线(输出):转换完毕后由ADC发出的一种状态信号,可由它申请中断或DMA传送,或作查询之用。③模拟信号输入线:来自被转换的对象,有单通道输入与多通道输入之分。多通道ADC还有用于进行通道选择的地址线。④数字量输出线:ADC将数字量送给CPU的数据线。数据线的根数表示ADC的分辨率。第43页,课件共73页,创作于2023年2月二、A/D转换器与微处理器接口方法

1.A/D转换器与CPU连接时的有关问题

⑴ADC分辨率

①分辨率=CPU的数据总线宽度ADC输出线与数据总线对应相连。一次读入全部转换数据。②分辨率<CPU的数据总线宽度ADC输出线与低位数据总线对应相连。一次读入全部转换数据,并把读入的数据中的多余的若干高位屏蔽(即清0)。第44页,课件共73页,创作于2023年2月③分辨率>CPU的数据总线宽度

转换数据需分2次读取,ADC输出线与数据总线的连接有2种方式:Ⅰ.左对齐:ADC输出线由高位向低位与数据总线对应连接;剩余低位的ADC输出线再按由高到低位的顺序也与数据总线对应连接,多余的低位数据总线则不用。在读取低4位的转换数据时,只需把读入到AL中的数据的低4位屏蔽(即:清0)即可。第45页,课件共73页,创作于2023年2月Ⅱ.右对齐:ADC输出线由低位向高位与数据总线对应连接;剩余高位的ADC输出线再按由低位向高位的顺序也与数据总线对应连接,多余的高位数据总线则不用。在读取高4位的转换数据时,只需把读入到AL中的数据的高4位屏蔽(即:清0)即可。⑵在ADC无片内锁存器时,需在ADC输出线与数据总线间外加三态锁存器。第46页,课件共73页,创作于2023年2月⑶ADC的转换启动信号①电平启动:此种ADC要求启动电平保持到转换结束为止,否则得不到正确的转换结果。如,ADC574。2.A/D转换器接口的主要操作②脉冲启动:此种ADC只要在启动开始后便可撤除启动信号。但要求的一定的脉冲宽度,通常采用、的脉宽即可。对要求较大脉宽的ADC,可附加延长脉宽的逻辑电路。第47页,课件共73页,创作于2023年2月2.A/D转换器接口的主要操作①通道选择:用于多模拟量输入通道的ADC。CPU发出的通道号可以从数据总线或地址总线发出。②发转换启动信号:③取回“转换结束”状态信号。④读取转换数据:在CPU控制下,用查询或中断方式将数据读入内存,或在DMAC控制下,直接输入内存。⑤发采样/保持信号(S/H)控制信号:对高速信号的A/D转换,需要设置采样/保持电路,因此需要向它发控制信号,以进行采样与保持操作。第48页,课件共73页,创作于2023年2月3.A/D转换器数据的传送⑴数据采集速率的上限值:f0=1/(T+τ)其中,T是ADC的转换时间,τ是把数据存入指定内存单元所需的传输时间。可见,要提高采样速率,应选用高速ADC、并缩短传输时间。第49页,课件共73页,创作于2023年2月⑵ADC与内存间的数据交换方法:

①查询方式:第50页,课件共73页,创作于2023年2月②中断方式:第51页,课件共73页,创作于2023年2月③DMA方式:利用DMAC使数据从ADC到内存进行直接传送。④对超高速数据采集系统,由于A/D转换速度极快,故在A/D转换器板上设置RAM,用于暂时就近存放数据,然后再由CPU从板上RAM中读数据存入内存。第52页,课件共73页,创作于2023年2月4.A/D转换器接口电路的结构形式接口电路的实现,可采用中小规模集成电路、GAL器件、通用可编程并行接口芯片。5.A/D转换器接口电路的实现方法①与CPU直接连接:用于有三态锁存器的ADC芯片。②通过三态锁存器与CPU相连:用于无三态锁存器的ADC。③通过可编程接口芯片与CPU相连:如8255A。第53页,课件共73页,创作于2023年2月10.4ADC0809接口电路分析与设计

一、ADC0809外部特性

1.内部逻辑结构第54页,课件共73页,创作于2023年2月

ADC0809是8路模拟输入单片型逐次逼近式8位A/D转换器,芯片内部带有三态输出锁存缓冲器。因此,可以直接与CPU系统总线连接而不必通过I/O接口芯片连接。由图可知,ADC0809由两大部分组成:模拟多路开关和逐次逼近式ADC。

8路模拟多路开关和3位地址锁存器和译码器实现对8路输入模拟量IN0~IN7的选择。当ALE(地址锁存允许)控制信号有效(为高电平)时,将3位地址ADDA、ADDB、ADDC锁入地址锁存器中,经译码选择8路模拟量中的一路。第55页,课件共73页,创作于2023年2月2.各引脚功能:☆IN7~IN0:8路(8通道)模拟量输入端。☆D7~D0:8位数字量输出,其中D7为最高位(MSB),D0为最低位(LSB)。☆START:启动转换命令输入端。在该脚上加一高电平,转换开始。☆EOC:转换结束指示端,该信号平时为高电平,转换开始后,先保持极短时间的高电平,然后转为低电平,并在转换中均为低电平。转换结束又变为高电平。

☆OE:输出使能(允许)端,此引脚上加高电平,即打开输出缓冲器三态门,输出数据。☆ADDC、ADDB、ADDA:通道号选择输入端,用来选择8路输入中的一路。ADDC是高位ADDA是低位。111~000对应IN7~IN0

第56页,课件共73页,创作于2023年2月☆ALE:通道号锁存控制端。当ALE为高电平时,将ADDC、ADDB和ADDA三个输入引脚上的通道号锁存,也就是使相应通道的模拟开关处于闭合状态。实际使用时常将ALE与启动信号START连在一起,当在START端加一高电平时,同时将通道号也锁存起来。☆CLK:时钟脉冲输入端,该时钟供ADC0809内部工作定时用。当VCC=+5V时,允许的最高频率为1280kHZ,转换速率可达50µS,典型的时钟频率为640kHZ,转换时间也是100µS。

☆REF(+)和REF(-):两个参考电压输入引脚,通常参考电压从REF(+)端引人,而REF(-)与模拟地AGND相连。当REF(+)加+5V时,输入电压范围为0V~+5V。

第57页,课件共73页,创作于2023年2月3.ADC0809工作时序第58页,课件共73页,创作于2023年2月由图知,对指定通道采集一个数据的过程是:①首先输入3位通道号编码送到ADDC、ADDB和ADDA引脚上。②ALE端加一正脉冲信号,将通道号编码锁存,并使该路模拟信号经选择开关达到比较器的输入端。③在START引脚上加一正脉冲信号,启动A/D转换。START的上升沿将逐次逼近寄存器复位,下降沿启动A/D转换。启动脉冲可通过执行OUT指令产生负脉冲再经反相后形成正脉冲,也可以由专门定时电路或可编程定时器(如8253)产生。第59页,课件共73页,创作于2023年2月④转换开始后EOC先保持原高电平约2µS+8T的时间,然后变为低电平,经过约100µS后,转换结束,EOC又变为高电平,该信号状态可作转换结束标志来查询或申请中断。

⑤转换结束后,可通过执行IN指令,设法在OE端产生一个正脉冲打开输出缓冲器三态门,让转换后的数字量出现在数据总线上,再由CPU读取。第60页,课件共73页,创作于2023年2月例1:设计以8255A作为ADC0809与CPU的接口的硬件电路,并设计程序,用查询法实现对8个模拟通道顺序采集一个数据,存入偏移地址从DATA_BUF开始的存储单元中。设系统分配给8255A的端口地址为220H~223H1.硬件分析与设计☆ADC0809的数据输出线D7~D0与8255的A口相连,将A口设为方式0、输入。☆用C口来产生控制信号,实现对ADC0809的控制:△选PC3与ADC0809的START和ALE两端相连,由CPU控制PC3向0809发启动信号和通道号锁存信号。二、ADC0809接口电路设计举例第61页,课件共73页,创作于2023年2月△选PC2、PC1、PC0分别与通道号输入端ADDC、ADDB、ADDA相连,用以传送通道号。

△选PC7与转换结束信号EOC和输出允许信号OE同时相连,这样,CPu通过查询PC7的状态即可控制数据的读入过程。△鉴于对C口引脚的使用安排,可确定把C口设为方式0,C口高4位定为输入,低4位定为输出。☆工作时钟CLOCK由系统时钟CLK经8分频后提供。第62页,课件共73页,创作于2023年2月第63页,课件共73页,创作于2023年2月2.编程:

转换结束信号EOC和输出允许信号OE相连后与PC7相接,这样,CPU通过查询PC7的状态即可控制数据的读入过程。根据ADC0809的工作时序,在启动脉冲结束后,先要查到EOC为低电平,表示转换已开始。然后再继续查EOC,一旦发现EOC变为高电平,说明转换已结束,又由于输出允许端OE与EOC相连.当EOC变高时,OE也为变高,从而使ADC0809的输出缓冲器打开,输出数据出现在8255A的A口上,这时可用IN指令读入CPU。第64页,课件共73页,创作于2023年2月第65页,课件共73页,创作于2023年2月MOVDX,223H;8255A控制口地址

MOVAL,98H;初始化命令字,各口为方式0,A口

OUTDX,AL;输入,C口高4位输入,低4位输出

MOVCX,8;数据个数

MOVBL,00H;首先把通道号0送入BL

LEADI,DATA_BUF

NEXT_IN:MOVDX,222H;C口地址

MOVAL,BL

OUTDX,AL;输出通道号

MOVDX,223H

MOVAL,07H

OUTDX,AL;使PC3置1,发启动信号的上升沿。

NOP

NOP

NOP第66页,课件共73页,创作于2023年2月MOVAL,06H;使PC3复位,

OUTDX,AL;启动信号恢复低电平,转换开始。

MOVDX,222H

NOCONV:INAL,DX;读C口内容

TESTAL,80H;查PC7=?

JNZNOCONV;=1,说明未开始转换,则等待

NOEOC:INAL,DX;已开始转换,则读C口

TESTAL,80H;查PC7=?

JZNOEOC;=0,则转换未结束,等待

MOVDX,220H;转换结束,则从A口读取转换数据

INAL,DX

MOV[DI],AL;数据存入指定位置

INCDI

INCBL

L

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论