微机接口第八章AD_DA-4学时

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

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

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

资源描述

第五节模拟接口第四节数/模、模/数转换1#炉温度计A/DA/DA/DA/D数据选择器2#炉温度计3#炉温度计4#炉温度计数据分配器D/AD/AD/AD/A1#炉温控2#炉温控3#炉温控4#炉温控模拟输出通道的作用是为了实现对生产过程的控制,将计算机对输入信号进行加工、处理后的数据信号输出至执行机构。在一个微型计算机检测与控制系统中,往往由模拟输入通道和模拟输出通道构成。模拟输入通道的作用就是将生产过程中所需检测的连续变化的物理量转化成计算机所能接收和识别的数字信号。温度、压力、车床转速、加工部件位移量、转轴转角……实时检测与控制系统的构成图测控对象传感器1信号处理N信号处理1传感器N多路开关D/A转换器N路功率放大器N路执行机构N台A/D转换器采样保持计算机……………模拟输入通道模拟输出通道实时检测与控制系统的构成图D/A转换器D3D2D1D0V000000001V0=VREF/8=E0200010V1=E0210100V2=E0221000V3=E023…………1111V=V0+V1+V2+V3●一、数/模转换DAC原理●1、权电阻网络作用:计算机输出的二进制数字量转换成模拟量。组成:由运算放大器和电阻网络构成。(DigitaltoAnalogConverter)-+R0V0VREFK3K2K1K0R2R4R8RD3D2D1D0I1fOURRUE0=VREF/8REFOVRRV8(加权电流法)-+I-I+U-U+IfUoR1RbRfUI+-I1表现出输出电压与数字量之间的对应关系缺点:随着位数的增加电阻阻值范围太宽,不利于集成。K0闭合时T形权电阻转换2R2R2R2R2RRRRR0K3K2K1K0V0VREF-+D3D2D1D0IiIoABCD●2、T形权电阻网络从ABCD各点看进去的等效电阻都是R。D点电压:VREFC点电压:VREF/2B点电压:VREF/4A点电压:VREF/8K3闭合时:Ii=VREF/2RK2闭合时:Ii=VREF/4RK1闭合时:Ii=VREF/8RK0闭合时:Ii=VREF/16R开关都闭合时)21212121(R2VI3210REFi输出电压)21212121(RR2VRIV3210OREFOiOD/A转换器8032●二、DAC芯片举例DAC0832是CMOS工艺制造的8位电流输出型双缓冲D/A转换器,片内带有数据锁存器,可与微处理器直接相连。●1、DAC0832引脚和内部结构数字接口的引脚模拟输出引脚DAC0832的内部结构DAC0832的内部结构示意图双缓冲器结构被转换的数据保存在DAC寄存器中时,下一个数据可以装入输入寄存器中,转换速度快。8位输入寄存器8位DAC寄存器8位D/A转换器VREFIOUT2IOUT1输入D0数据D74~713~16ILECSWR1WR2XFERRFBAGND(模拟地)Vcc(+5V或+15V)DGND(数字地)1912181781211932010LE1LE2﹠≥1≥1LE=1寄存器输出随输入变化LE=0输出被锁存8032工作方式●2、DAC0832的工作方式根据对DAC0832的输入锁存器和DAC寄存器的不同控制方法,DAC0832有如下三种工作方式:(1)直通方式在直通方式下,数据不锁存,此时,被转换数据一旦到达输入端口D7~D0,即可进入转换器且输出。(2)单缓冲方式单缓冲方式是将两个寄存器之一始终置于直通方式,另一个寄存器处于锁存方式。(3)双缓冲方式两个寄存器都处于锁存状态,在这种工作方式下,能够对一个数据进行D/A转换的同时,输入另一个数据,提高了D/A转换速率。DAC0832的主要技术指标●3、DAC0832的主要技术指标(4)线性度:当数字量变化时,D/A转换器输出的模拟量按比例变化的程度。理想的D/A转换器是线性的,但实际上有误差,模拟输出偏离理想输出的最大值称为线性误差。一般电流型D/A转换器在几百纳秒到几个微秒之内;而电压型D/A转换器转换较慢,取决于运算放大器的响应时间。(3)精度:D/A转换器实际输出与理论值之间的误差,一般采用数字量的最低有效位作为衡量单位(如1/2LSB)。(1)分辨率:D/A转换器能够转换的二进制数的位数;或1个二进制增量所代表的模拟量大小。位数多分辨率也就高。分辨率=模拟输出的满量程值/(2n-1)(n为二进制数据的位数)例如:V满=5V,8位的D/A转换器分辨率为5/256=20mV。(2)转换时间:数字量输入到模拟量输出达到稳定所需的时间。例如:D/A分辨率为20mV,则精度为±10mV。DAC芯片与主机的连接●4、DAC与主机的连接MOVAL,BUFMOVDX,PORTOUTDX,ALD7~D0IOWA9~A0系统总线DI0~7WR1ILECSDAC0832译码器WR2XFERDGNDVerfRfbI01I02AGND+-A+5VVout+5V200H1)单缓冲方式。DAC芯片与主机的连接MOVAL,BLOUTPORT1,ALOUTPORT2,AL2)双缓冲方式的系统连接。锁存到输入寄存器D7~D0IOWA9~A0系统总线DI0~7WR1ILECSDAC0832译码器WR2XFERDGNDVerfRfbI01I02AGND+-A+5VVout+5VPROT1PROT2锁存到DAC寄存器,并开始转换DAC芯片与主机的连接采用两级锁存电路的系统连接的另一种形式DAC芯片的应用●5、DAC的应用MOVDX,PORTMOVAL,0FFHRepeat:INCALOUTDX,ALJMPRepeat若改变锯齿波斜率,可用NOP或延时指令控制,如下:Vt利用D/A转换器,输出一个锯齿电压。例VtMOVDX,PORTMOVAL,0FFHRepeat:INCALOUTDX,ALCALLDELAY1JMPRepeatDELAY1:MOVCX,DATA1DELAY2:LOOPDELAY1RETDAC芯片的应用例三角波MOVDX,0AH;端口地址=0AHMOVAL,00H;送下限值SJ0:OUTDX,AL;将数据输出到A口INCAL;AL加1JNZSJ0;上限为FFH,没到上限,继续循环DECALSJ1:DECAL;到上限,AL减1OUTDX,ALJNZSJ1;若没到下限,转SJ1继续减1输出INCALJMPSJ0;到下限,转SJ0重新从下限开始如果没有这条指令波形的情况?VtDAC芯片的应用例梯形波MOVDX,0AHMOVAL,00H;从0开始OUTDX,AL;将数据输出到A口TX0:INCAL;AL加1OUTDX,ALCMPAL,0FFH;检查到上限否JNZTX0;上限为FFH,没到上限,继续循环MOVCX,0FFH;上限到,延时TX1:NOPLOOPTX1TX2:DECAL;AL减1OUTDX,ALCMPAL,00H;检查到下限否JNZTX2;上限为00H,没到下限,继续循环MOVCX,0FFH;下限到,延时TX3:NOPLOOPTX3JMPTX0;转TX0开始下一个周期Vt如果10V对应FFH当输出8V时保持5ms的梯形波?8v对应CCHA/D转换器●三、模/数转换ADC原理作用:将连续变化的模拟量转换成n位二进制数字量。A/D转换器(AnalogtoDigitalConverter)方法:计数比较法、逐次逼近法、双积分法及电压频率转换法等。●1、计数比较法A/D转换器基本思想被测电压和一个均匀增长的电压斜坡不断地比较,直到二者相等,比较过程结束,并输出一个代表被测电压值的二进制数值。缺点:转换速度慢。A/D转换器●2、逐次逼近法A/D转换器10种砝码512g128g256g……2g1g……“1”“0”“1”称得结果1010100011=512+128+32+2+1=625(g)基本思想首先置最高位为1,经D/A转换后与输入的模拟量比较,模拟D/A,置1正确;模拟D/A将此位置0。移向下一位。逐次逼近法进行n次比较。计数比较法进行2n次比较。512512256128512A/D转换方法●3、双积分法A/D转换器第一时段积分器对输入电压Vi进行积分,在固定的T1时刻得到积分电压VO第二时段积分器对基准电压VREF进行反相积分,积分电压等于0时对应△tdtVRC1V1T0IO0dtVRC1VtTREFO1REFOtVRC1VI1OVTRC1VIREF1VVTt被转换的电压VI越大,VO就越大,△t就越长,若在△t时间内计数,则计数值即为被转换电压的等效数字值。精度可以很高,但速度较慢。工作过程分为两个时间段:T1和△tA/D转换器●4、A/D转换步骤采样→保持→量化→编码量化:就是A/D转换电路把离散信号的幅值数字化的过程。a.采样和保持b.量化和编码采样保持电路采样时开关闭合,输入电压VIN向电容充电,CH电压与输入电压一致。保持时开关断开,CH电压保持在开关断开瞬间的值。由于A/D转换需要一定时间,对于高速变化的信号源,在转换期间,其值可能已发生变化,引起转换误差,因此为了“冻结”输入信号的瞬时值采用采样保持器。VINVOUTCH编码:把已经量化的模拟数值用二进制数码、BCD码等表示。采样保持电路S/H实现ADC实现A/D转换器●四、ADC芯片举例理想的A/D转换器对于CPU应该是一个简单的输入接口,或表现为一个只读ROM。在A/D转换器与CPU接口中必须考虑如下问题:①A/D转换器的转换时间;②A/D转换器的数字输出特性;③A/D转换器的分辨率和微处理器数据总线的位数;④A/D转换器的控制和状态信号。通用ADC芯片的外部引脚A/D0809引脚●1、ADC0809引脚和内部结构启动转换输入地址锁存有效输入信号转换完成输出信号读允许信号时钟信号输入端ADC0809的内部结构框输出部分ALE将编码后的通道号锁存,模拟量进入比较器三条模拟通道地址线用来选择8个模拟量输入通道IN0~IN7转换启动信号转换结束信号转换的核心A/D转换器●2、ADC0809的主要参数a.分辨率:是指A/D转换对微小输入变化的敏感程度,通常用转化器输出数字量最低有效位所对应的模拟输入电平值表示。通常也可以简单地用数字量的位数表示分辨率。b.精度:实际值与理论值之间的最大偏差。c.转换时间按转换速度可分为超高速(转换时间≤330ns),次超高速(330~3.3µs),高速(转换时间20µs),中速(20~300µs)低速(转换时间300µs)等。d.输出逻辑电平e.温度系数和增益系数例如:1个10位A/D转换器,转换一个满量程为5V的电压,则它能分辨的最小电压为5000mV/1024≈5mV。12位A/D转换器能分辨的最小电压为5000/4096≈1mV。A/D转换器的数字量输出位数越多,其分辨率就越高!8259的IR5ADC芯片的应用1例编程启动ADC,当转换结束后采用中断处理方式。1)主程序;数据段ADTEMPDB0;给定一个临时变量;代码段…;设置中断向量等工作STI;开中断MOVDX,298HOUTDX,AL;与AL值无关……;其他工作启动A/D转换A/D转换器接口的主要操作①进行通道选择。②发转换启动信号③读取“转换结束”状态信号。可以申请中断或DMA请求。④读取转换的数据。OEADC芯片的应用12)中断服务程序ADINTPROCPUSHAX;保护寄存器PUSHDXPUSHDSMOVAX,@data;设置数据段DSMOVDS,AXMOVDX,298HINAL,DX;读A/D转换的数字量MOVADTEMO,AL;送入缓冲区MOVAL,20H;发送EOI命令OUT20H,ALPOPDS;恢复寄存器POPDXPOPAXIRET;中断返回ADINTENDP也可以替换为送显示程序ADC芯片的应用2a)启动转换;数据段counterEQU8BUFDBcounterDUP(0);数据缓冲区;代码段MOVBX,OFFSETBUFMOVCX,counterMOVDX,220H;从IN0开始转换start1:OUTDX,AL;启动A/D转换PUSHDX编程启动ADC,转换结束时,采

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

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

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

×
保存成功