资源描述:
单片机系统中主要的应用领域是在实时测控、智能化仪表以及自动控制等方面,而在这些应用系统除数字量之外还会遇到另一种物理量,即模拟量。例如温度、速度、电压、电流、压力等,它们都是连续变化的物理量。由于单片机只能处理数字量,因此在单片机系统中检测的信号为模拟量的就需要将模拟量转换为数字量输入,这样单片机才能对其进行处理。然后再将处理结果的数字量转换为模拟量输出,实现对被控对象(过程或仪器仪表机电设备、装置)的控制。因此就出现了单片机的数/模(D/A)和模/数(A/D)转换的接口问题。,第4章测控接口技术,第4章测控接口技术,,A/D转换接口与应用D/A转换接口与应用,A/D转换接口与应用,A/D转换器概述A/D转换器的选择常用A/D转换器接口芯片ADC0809实践与思考,实现模拟量变换为数字量的器件称为模数转换器(ADC)简称A/D转换器。A/D转换器在单片机控制系统中主要用于数据采集,向单片机提供被控对象的各种实时参数。,,A/D转换器概述,A/D转换器分类A/D转换器的基本原理A/D转换器的主要技术指标,,A/D转换器分类,,双积分式A/D转换器的主要优点是转换精度高,抗干扰性能好,价格便宜;但转换速度较慢,因此这种转换器主要用于速度要求不高的场合。逐次逼近式A/D转换器,转换速度较快、精度较高,其转换时间大约在几微秒到几百微秒之间。压频变换式(V/F)A/D转换器的电路简单,对外围器件要求不高,适应环境能力强,转换速度可与双积分式A/D相比,且价格低。,双积分式A/D转换器逐次逼近式A/D转换器压频变换式A/D转换器,,A/D转换器的基本原理,双积分式A/D转换器的工作原理逐次逼近式A/D转换器的工作原理压频(V/F)变换式A/D转换器原理,,工作原理框图如下,双积分式A/D转换器原理,,双积分式A/D转换器原理,在转换开始信号控制下,开关接通模拟输入端,输入的模拟电压VIN在固定时间T内对积分器上的电容C充电(正向积分),时间一到,控制逻辑将开关切换到与VIN极性相反的基准电源上,此时电容C开始放电(反向积分),同时计数器开始计数。当比较器判定电容C放电完毕时就输出信号,由控制逻辑停止计数器的计数,并发出转换结束信号。由图所示的积分器波形可以看出反向积分的斜率是固定的,VIN越大,积分器的输出电压就越大,反向积分时间就越长。计数器在反向积分时间内的计数值就是输入电压VIN在时间T内的平均值对应的数字量。由于这种A/D要经历正、反两次积分,故转换速度较慢。常用的双积分A/D转换集成电路有MC14433、ICL7135等。,,逐位逼近式A/D转换原理,工作原理框图如下,,逐位逼近式A/D转换原理,控制逻辑先置1结果寄存器最高位Dn1,然后经D/A转换得到一个占整个量程1/2的模拟电压VS,比较器将VS和模拟输入量VX比较,若VX>VS则保留Dn1(为1),否则Dn-1清零位。然后控制逻辑置1结果寄存器次高位Dn2,连同Dn1一起送D/A转换,得到的VS再和VX比较,以决定Dn2位保留为1还是清零,依次类推。最后D0连同前面的Dn1,Dn2,D1一起送D/A转换,转换得到的结果VS和VX比较,决定D0保留为1还是清零。至此,结果寄存器的状态便是与输入的模拟量VX对应的数字量。常用逐次逼近式A/D器件有ADC0809、ADC0816、ADC1210、AD574等。,,压频(V/F)变换式A/D转换器原理,工作原理框图如下,同时启动计数器与定时器,计数器将V/F输出的频率信号作为计数脉冲,定时器用基准频率作为定时脉冲,当定时结束时,定时器输出信号使计数器停止计数,这样计数器的计数值与频率之间的关系为,fD/T,式中D是计数值,T是计数时间,只要知道计数值D及计数时间T就能算出频率f,并根据频率计算出模拟电压。,,A/D转换器的主要技术指标,(1)分辨率即输出的数字量变化一个LSB(数字量的最低有效位)值的输入模拟量的变化值。(2)量程误差即输出全为1时输入的电压与理想输入量之差。(3)转换速率完成一次A/D采样的时间。(4)转换精度实际A/D结果与理想值之差。(5)与CPU之间的接口方式有并行接口方式和串行接口方式。,,A/D转换器的选择,1.A/D转换器转换位数的确定,A/D转换器转换位数的确定与整个测量系统所要测量控制的范围和精度有关,但又不能唯一确定系统的精度。,2.A/D转换器转换速率的确定,通常积分型、电荷平衡型和跟踪比较型A/D转换器转换速度较慢,转换时间从几毫秒到几十毫秒不等,只能构成低速A/D转换器,一般用于对缓慢变化参量的检测和控制。逐次逼近式A/D转换器的转换时间可以从几s到100s左右,属于中速A/D转换器,常用于工业多通道单片机控制系统和声频数字转换系统等。双极型或CMOS工艺制造的全并行、串并行型和电压转移函数型的A/D转换器属于高速A/D转换器,转换时间仅为20~100ns之间,适用于雷达、数字通信、实时光谱分析等系统。,,A/D转换器的选择,3.采样保持器的确定,原则上直流和变化非常缓慢的信号可以不采样保持器,其他情况都要采样保持器。分辨率、转换时间、信号带宽可作为是否要采用保持器的参考。,4.基准电压,提供给A/D转换器在转换时所需的参考电压,是保证转换精度的基本条件。,5.A/D转换器量程引脚,A/D转换器的模拟量输入有时需要的是双极性的,有时是单极性的。输入信号最小值有从零开始的,也有从非零开始的。有的A/D转换器提供了不同量程的引脚,只有正确使用,才能保证转换精度。,,常用A/D转换器接口芯片ADC0809,ADC0809是典型的8位8通道逐次逼近式A/D转换器,CMOS工艺。可实现8路模拟信号的分时采集,片内有8路模拟选通开关,以及相应的通道地址锁存用译码电路,其转换时间为100s左右。,ADC0809的内部逻辑结构信号引脚MCS-51单片机与ADC0809接口应用程序,,ADC0809的内部逻辑结构,,信号引脚,各引脚功能如下,IN0~IN78路模拟量输入端。允许8路模拟量分时输入,共用一个A/D转换器。A、B、C3位地址线即模拟量通道选择线。ALE为高电平时,地址译码与对应通道选择见上表所示。,,信号引脚,ALE地址锁存允许信号,输入,高电平有效。上升沿时锁存3位通道选择信号。START启动A/D转换信号,输入,高电平有效。上升沿时将转换器内部清零,下降沿时启动A/D转换。EOC转换结束信号,输出,高电平有效。OE输出允许信号,输入,高电平有效。该信号用来打开三态输出缓冲器,将A/D转换得到的8位数字量送到数据总线上。D0~D78位数字量输出。D0为最低位,D7为最高位。由于有三态输出锁存,可与主机数据总线直接相连。CLOCK外部时钟脉冲输入端。当脉冲频率为640kHz时,A/D转换时间为100s。VR,VR-基准电压源正、负端。取决于被转换的模拟电压范围,通常VR5VDC,VR-0VDC。Vcc工作电源,5VDC。GND电源地。,,MCS-51单片机与ADC0809接口,电路连接主要涉及两个问题1.8路模拟信号通道选择;2.A/D转换完成后转换数据的传送。,,8路模拟信号通道选择,A、B、C分别接地址锁存器提供的低三位地址,只要把3位地址写入ADC0809的地址锁存器中,就实现了模拟信号通道选择。对系统来说,地址锁存器是一个输出口,为了把3位地址写入,还要提供端口地址。图中使用的是线选法,口地址由P2.0确定,ADC0809的通道地址确定如下,若无关位都取0,则8路通道IN0~IN7的地址分别为0000H~0007H。启动图中的ADC0809进行转换只需要下面的指令(以通道0为例)MOVDPTR,0000H;选中通道0MOVXDPTR,A;信号有效,启动转换,,转换数据的传送,1.定时传送方式。对于一种A/D转换器来说,转换时间作为一项技术指标是已知且固定的。例如ADC0809转换时间为128s,相当于6MHz的MCS-51单片机共64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用这个延时子程序,延迟时间一到,转换已经完成了,接着就可进行数据传送。2.查询方式。A/D转换芯片有表明转换完成的状态信号,例如ADC0809的EOC端。因此可以用查询方式,软件测试EOC的状态,即可确知转换是否完成,然后进行数据传送。3.中断方式。把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。,可采用下述3种方式,图中,EOC信号经过反相器后送到单片机的,因此可以采用查询该引脚或中断的方式进行转换后数据的传送。MOVDPTR,0000H;选中通道0MOVXA,DPTR,;信号有效,输出转换后的数据到A累加器,,应用程序,1.程序功能根据图中的电路图,设计一个8路模拟量输入的巡回检测系统,采样数据依次存放在片内RAM78H~7FH单元中。2.程序清单,,实践与思考,采用软件延时等待方式采集图中的模拟信号,并将转换结果存入8051片内RAM的40H单元中,设定单片机的晶振频率为6MHz。,,D/A转换接口与应用,D/A转换器分类D/A转换器的基本原理D/A转换器的主要性能指标D/A转换器的选择常用D/A转换器接口芯片DAC0832实践与思考,实现数字量变换为模拟量的器件称为数模转换器(DAC),简称D/A转换器。D/A转换器用于模拟控制,通过机械或电气手段对被控对象进行调整和控制。,,D/A转换器分类,按照工作原理,D/A转换器可分成两大类1.直接D/A转换器直接将输入的数字量转换为输出的模拟量;通常由一组权电阻网络或是梯形电阻网络与一组控制开关组成。2.间接D/A转换器将输入的数字量转换为某种中间量,然后再把这种中间量转换为输出的模拟量。很少使用。,按输入端的结构可以分为两种1.输入端带有数据锁存器,这种D/A转换器的数据线可以直接和单片机的数据总线相接;2.端不带数据锁存器,这时需要另配数据寄存器。,,D/A转换器的基本原理,现以4位D/A转换器为例说明其工作原理,如图所示。,,D/A转换器的基本原理,假设D3、D2、D1、D0全为1,则BS3、BS2、BS1、BS0全部与“1”端相连。根据电流定律,有,由于开关BS3BS0的状态是受要转换的二进制数D3、D2、D1、D0控制的,并不一定全是“1”。因此,可以得到通式,,D/A转换器的基本原理,考虑到放大器反相端为虚地,故,选取RfbR,可以得到,对于n位D/A转换器,它的输出电压VOUT与输入二进制数BDn-1D0的关系式可写成,结论D/A转换过程主要由解码网络实现,而且是并行工作的。这种转换方式的速度快,一般为微秒级,有的可达几十纳秒。输出电压除了与输入的二进制数有关,还与运算放大器的反馈电阻Rfb以及基准电压VREF有关。,,D/A转换器的主要性能指标,D/A转换器性能指标是衡量芯片质量的重要参数,也是选用D/A芯片型号的依据。下面介绍几个与接口有关的技术性能指标。,分辨率建立时间接口形式,,分辨率,分辨率是D/A转换器对输入量变化敏感程度的描述,与输入数字量的位数有关。如果数字量的位数为n,则D/A转换器的分辨率为2n。这就意味着数/模转换器能对满刻度的2n输入量做出反应。例如8位数的分辨率为1/256,10位数的分辨率为1/1024等。因此数字量位数越多,分辨率也就越高,亦即转换器对输入量变化的敏感程度也就越高。使用时,应根据分辨率的需要来选定转换器的位数。DAC常可分为8位、10位、12位三种。,,建立时间,建立时间是描述D/A转换速度快慢的一个参数,指从输入数字量变化到输出达到终值误差(1/2)LSB(最低有效位)时所需的时间。通常以建立时间来表示转换速度。转换器的输出形式为电流时建立时间较短;而输出形式为电压时,由于建立时间还要加上运算放大器的延迟时间,因此建立时间要长一点。但总的来说,D/A转换速度远高于A/D转换速度,例如快速的D/A转换器的建立时间可达1s。,,接口形式,D/A转换器与单片机接口方便与否,主要决定于转换器本身是否带数据锁存器。总的来说有两类D/A转换器,一类是不带锁存器的,另一类是带锁存器的。对于不带锁存器的D/A转换器,为了保存来自单片机的转换数据,接口时要另加锁存器,因此这类转换器必须在口线上;而带锁存器的D/A转换器,可以把它看做是一个输出口,因此可直接在数据总线上,而不需另加锁存器。,,D/A转换器的选择,选择D/A转换芯片时,主要考虑芯片的性能、结构及应用特性。在性能上必须满足D/A转换的技术要求;在结构和应用特性上应满足接口方便、外围电路简单、价格低廉等要求。1.D/A转换芯片主要性能指标的选择在D/A接口及设计的实际应用中,用户在选择时主要考虑的是用位数(8位、12位)表示的转换精度和转换时间。,,D/A转换器的选择,2.D/A转换芯片的主要结构特性和应用特性的选择(1)数字输入特性。数字输入特性包括接收数据的码制、数据格式和逻辑电平。(2)数字输出特性。对于输出特性具有电流源性质的D/A转换器,只要输出端的电压小于输出电压允许范围,输出电流和输入数字之间保持正确的转换关系,而与输出端的电压大小无关。对于输出特性为非电流源特性的D/A转换器,无输出电压允许范围指标,电流输出端应保持公共端电位或虚地,否则将破坏其转换关系。(3)锁存特性及转换控制。如果D/A转换器没有输入锁存器,与CPU数据总线连接时必须外加锁存器,否则只能通过具有输出锁存功能的I/O口输出数字量给D/A转换器。(4)参考电压源。对接口电路的工作性能、电路的结构有很大的影响。使用内部带有低漂移精密参考电压源的D/A转换器不仅能保证有较好的转换精度,而且可以简化接口电路。,,常用D/A转换器接口芯片DAC0832,DAC0832是一个8位D/A转换器,单电源供电,从5~15V均可正常工作。基准电压的范围为10V,电流建立时间为1s,CMOS工艺,低功耗20mW。,1.引脚与结构,DAC0832内部结构框图,DAC0832引脚图,,常用D/A转换器接口芯片DAC0832,,1.引脚与结构,(1)DI7~DI0转换数据输入。(2)片选信号(输入),低电平有效。(3)ILE数据锁存允许信号(输入),高电平有效。(4)第1写信号(输入),低电平有效。(5)第2写信号(输入),低电平有效。(6)数据传送控制信号(输入),低电平有效。上述两个信号控制DAC寄存器是数据直通方式还是数据锁存方式;当和时,为DAC寄存器直通方式;当和时,为DAC寄存器锁存方式。,常用D/A转换器接口芯片DAC0832,(7)Iout1电流输出1。(8)Iout2电流输出2。(9)Rfb反馈电阻端。(10)Vref基准电压,其电压可正可负,范围10~10V。(11)DGND数字地。(12)AGND模拟地。,,1.引脚与结构,DAC0832的工作方式,单缓冲方式的接口与应用双缓冲方式的接口与应用,,单缓冲方式的接口与应用,(1)单缓冲方式连接,所谓单缓冲方式就是使DAC0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式,或者说两个输入寄存器同时受控的方式。,DAC0832单缓冲方式接口,图为两个输入寄存器同时受控的连接方法,两个寄存器的地址相同。,,单缓冲方式的接口与应用,DAC0832单缓冲方式接口,图中一个寄存器处于直通方式。另一个寄存器处于受控锁存方式。,,应用程序,D/A转换产生的锯齿波,1、程序功能。对上图所示电路进行编程,产生锯齿波。图中的DAC0832工作于单缓冲方式,其中输入寄存器受控,而DAC寄存器直通。2、程序清单。假定输入寄存器地址为7FFFH,产生锯齿波的源程序清单如下ORG0200HDASAWMOVDPTR,7FFFH;输入寄存器地址,假定P2.7接MOVA,00H;转换初值WWMOVXDPTR,A;D/A转换INCANOP;延时NOPNOPAJMPWW执行上述程序,在运算放大器的输出端就能得到如右图所示的波形图。,,双缓冲方式的接口与应用,所谓双缓冲方式,就是把DAC0832的两个锁存器都接成受控锁存方式。双缓冲DAC0832的连接如图所示。为了实现寄存器的可控,应当给寄存器分配一个地址,以便能按地址进行操作。假定输入寄存器地址为FEH,DAC寄存器地址为FFH,则完成一次数/模转换的程序段如下,MOVR0,0FEH;装入输入寄存器地址MOVXR0,A;转换数据送输入寄存器INCR0;产生DAC寄存器地址MOVXR0,A;数据通过DAC寄存器,,双缓冲方式应用举例,双缓冲方式用于多路数/模转换系统,以实现多路模拟信号同步输出的目的。例如使用单片机控制X-Y绘图仪。X-Y绘图仪由X、Y两个方向的步进电机驱动,其中一个电机控制绘图笔沿X方向运动,另一个电机控制绘图笔沿Y方向运动,从而绘出图形。因此对X-Y绘图仪的控制有两点基本要求一是需要两路D/A转换器分别给X通道和Y通道提供模拟信号;二是两路模拟量要同步输出。,单片机控制X-Y绘图仪两路模拟量输出是为了使绘图笔能沿X-Y轴做平面运动,而模拟量同步输出则是为了使绘制的曲线光滑。否则绘制出的曲线就是台阶状的,如右图所示。,为此就要使用两片DAC0832,并采用双缓冲方式连接,如图下图所示。,,双缓冲方式应用举例,控制X-Y绘图仪的双片DAC0832接口,1、程序功能实现X、Y两个方向坐标量的同步输出。2、程序地址定义假定X方向0832输入寄存器地址为F0H,Y方向0832输入寄存器地址为F1H,两个DAC寄存器公用地址为F2H。X坐标数据存于DATA单元中,Y坐标数据存于DATA1单元中。,,双缓冲方式应用举例,MOVR1,DATA;X坐标数据单元地址MOVR0,0F0H;X向输入寄存器地址MOVA,R1;X坐标数据送AMOVXR0,A;X坐标数据送输入寄存器INCR1;指向Y坐标数据单元地址INCR0;指向Y向输入寄存器地址MOVA,R1;Y坐标数据送AMOVXR0,A;Y坐标数据送输入寄存器INCR0;指向两个DAC寄存器地址MOVXR0,A;X、Y转换数据同步输出RET,3、程序清单,,实践与思考,设计一个可选的波形产生电路。(1)波形的选择由按键完成。(2)可以选择的波形①周期为25ms的锯齿波。②周期为50ms的三角波。③周期为50ms的方波。(3)输出波形选用DAC0832产生。,,
展开阅读全文