单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口

上传人:sat****105 文档编号:265876805 上传时间:2022-03-14 格式:PPT 页数:99 大小:2.22MB
返回 下载 相关 举报
单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口_第1页
第1页 / 共99页
单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口_第2页
第2页 / 共99页
单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口_第3页
第3页 / 共99页
单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口_第4页
第4页 / 共99页
单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口_第5页
第5页 / 共99页
点击查看更多>>
资源描述

《单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口》由会员分享,可在线阅读,更多相关《单片机原理及接口技术PPT课件(共13章)第11章 DA、AD转换的接口(99页珍藏版)》请在金锄头文库上搜索。

1、1第11章 AT89S51单片机与DAC、ADC的接口12 2【内容概要】在单片机测控系统中,对非电物理量如温度、压力、流量等的测量,须经传感器先转换成连续变化的模拟电信号(电压或电流),然后再将模拟电信号转换成数字量后才能在单片机中进行处理。实现模拟量转换成数字量的器件称为ADC(A/D转换器)。单片机处理完毕的数字量,有时要根据控制需求转换为模拟信号输出。数字量转换成模拟量的器件称为DAC(D/A转换器)。本章从应用的角度,介绍典型的ADC、DAC芯片与AT89S51单片机的接口设计。311.1单片机扩展D/A转换器概述单片机只能输出数字量,但是对于某些控制场合,常常需要输出模拟量,例如直

2、流电动机的转速控制。下面介绍单片机如何扩展DAC。目前集成化的DAC芯片种类繁多,设计者只需要合理选用芯片,了解它们的性能、引脚外特性以及与单片机的接口设计方法即可。由于现在部分单片机芯片中集成了DAC,位数一般在10位左右,且转换速度也很快,所以单片的DAC开始向高的位数和高转换速度上转变。而低端的并行8位DAC,开始面临被淘汰的危险,但是在实验室或涉及某些工业控制方面的应用,低端8位DAC以其优异的性价比还是具有较大的应用空间。341D/A转换器简介购买和使用D/A转换器时,要注意有关D/A转换器选择的几个问题。(1)D/A转换器的输出形式D/A转换器有两种输出形式:电压输出和电流输出。电

3、流输出的D/A转换器在输出端加一个运算放大器构成的I-V转换电路,即可转换为电压输出。(2)D/A转换器与单片机的接口形式单片机与D/A转换器的连接,早期多采用8位的并行传输的接口,现在除了并行接口外,带有串行口的D/A转换器品种也不断增多,目前多采用较为流行SPI串行接口。在选择单片D/A转换器时,要根据系统结构考虑单片机与D/A转换器的接口形式。452主要技术指标D/A转换器的指标很多,设计者最关心的几个指标如下。(1)分辨率分辨率指单片机输入给D/A转换器的单位数字量的变化,所引起的模拟量输出的变化,通常定义为输出满刻度值与2n之比(n为D/A转换器的二进制位数),习惯上用输入数字量的位

4、数表示。显然,二进制位数越多,分辨率越高,即D/A转换器输出对输入数字量变化的敏感程度越高。例如,8位的D/A转换器,若满量程输出为10V,根据分辨率定义,则分辨率为10V/2n,分辨率为10V/256=39.1mV,即输入的二进制数最低位数字量的变化可引起输出的模拟电压变化39.1mV,该值占满量程的0.391%,常用符号1LSB表示。56同理:10位D/A转换1LSB=9.77mV=0.1%满量程12位D/A转换1LSB=2.44mV=0.024%满量程16位D/A转换1LSB=0.076mV=0.00076%满量程使用时,应根据对D/A转换器分辨率的需要来选定D/A转换器的位数。(2)建

5、立时间建立时间是描述D/A转换器转换速度的参数,用于表明转换时间长短。其值为从输入数字量到输出达到终值误差(1/2)LSB(最低有效位)时所需的时间。电流输出的转换时间较短,而电压输出的转换器,由于要加上完成I-V转换的时间,因此建立时间要长一些。快速D/A转换器的建立时间可控制在1s以下。67(3)转换精度理想情况下,转换精度与分辨率基本一致,位数越多精度越高。但由于电源电压、基准电压、电阻、制造工艺等各种因素存在误差,严格地讲,转换精度与分辨率并不完全一致。两个相同位数的不同的DAC,分辨率则相同,但转换精度会有所不同。例如,由于制作工艺上的差异,某种型号的8位DAC精度为0.19%,而另

6、一种型号的8位DAC精度为0.05%。11.2单片机扩展并行8位DAC0832的设计美国国家半导体公司的DAC0832芯片是具有两级输入数据寄存器的8位DAC,它能直接与AT89S51单片机连接。7811.2.1DAC0832简介1DAC0832芯片介绍(1)DAC0832的特性其主要特性如下。分辨率为8位。电流输出,建立时间为1s。可双缓冲输入、单缓冲输入或直接数字输入。单一电源供电(+5V+15V)。(2)DAC0832的引脚及逻辑结构DAC0832的引脚如图11-1所示,DAC0832的片内逻辑结构如图11-2所示。89 9图11-1DAC0832的引脚10图11-2DAC0832的逻辑

7、结构11各引脚的功能如下。DI0DI7:8位数字信号输入端,与单片机的数据总线P0端口相连,用于接收单片机送来的待转换为模拟量的数字量,DI7为最高位。ILE=1,CS*=0,WR1*=0时,即M1=1(LE1*=0),待转换的数字量被锁存到第一级“8位输入寄存器”中。XFER*=0,WR2*=0时,即M3=1(LE2*=0),待转换的第一级8位输入寄存器中数字量被锁存到第二级的“8位DAC寄存器”中,并经“8位D/A转换电路”转换为电流输出。IOUT1:D/A转换器电流输出1端,输入数字量全为“1”时,IOUT1最大,输入数字量全为“0”时,IOUT1最小。1112IOUT2:D/A转换器电

8、流输出2端,IOUT2+IOUT1=常数。Rfb:外部反馈信号输入端,内部已有反馈电阻Rfb,根据需要也可外接反馈电阻。VCC:电源输入端,在+5V+15V范围内。DGND:数字信号地。AGND:模拟信号地,最好与基准电压(为模拟信号)共地。DAC0832内部的三部分电路如图11-2所示。“8位输入寄存器”用于存放单片机送来的数字量,使输入数字量得到缓冲和锁存,由LE1*=0(M1=1)加以控制;“8位DAC寄存器”为第二级寄存器,由LE2*=0(M3=1)控制,用于将“8位输入寄存器”输出的数字量锁存,并送入“8位D/A转换电路”转换,输出和数字量成正比的模拟电流。因此,DAC0832通常需

9、要外接I-V转换的运算放大器电路,才能得到模拟输出电压。121311.2.2AT89S51单片机与8位D/A转换器0832的接口设计设计AT89S51单片机与DAC0832的接口电路时,常用单缓冲方式或双缓冲方式的单极性输出。(1)DAC0832的单极性的电压输出单缓冲方式是指DAC0832内部的两个寄存器有一个处于直通方式,另一个处于受AT89S51单片机控制的锁存方式。在实际应用中,如果只有一路模拟量输出,或虽是多路模拟量输出但并不要求多路输出同步的情况下,就可采用单缓冲方式。单缓冲方式的接口电路如图11-3所示。1314图11-3单缓冲方式下AT89S51单片机与DAC0832的接口电路

10、15图11-3所示的是单极性模拟电压输出电路,由于DAC0832是8位(28=256)的D/A转换器,由基尔霍夫定律列出德方程组可解得DAC0832输出电压vo与输入数字量B的关系为:15显然,DAC0832输出的模拟电压vo的绝对值与输入的数字量B以及基准电压VREF成正比,且B为0时,vo也为0,B为255时,vo为最大的绝对值输出,且不会大于VREF。图11-3中,DAC0832的WR2*和XFER*接地,故DAC0832第二级的“8位DAC寄存器”(见图11-2)工作于直通方式。“8位输入寄存器”受CS*和WR1*端控制(ILE已经为高),而且CS*由译码器输入为FEH时,输出1616

11、端为低来控制(也可由P2口的某一条口线来控制)。因此,AT89S51单片机执行如下两条指令就可在WR1*和CS*上产生低电平信号,使DAC0832接收AT89S51单片机送来的数字量。MOVR0,#0FEH;DAC的8位输入寄存器端口地址FEHR0MOVXR0,A;AT89S51单片机将待转换的数字量送DAC,;且和译码器FEH输出端有效现举例说明单缓冲方式下DAC0832的应用。【例11-1】DAC0832用作波形发生器。试根据图11-3的电路,分别写出产生锯齿波、三角波和矩形波的程序段。在图11-3中,运算放大器A输出端Vout直接反馈到Rfb,故这种接线产生的模拟输出电压是单极性的。17

12、锯齿波的产生ORG2000HSTART:MOVR0,#0FEH;DAC地址FEH R0MOVA,#00H;数字量ALOOP:MOVXR0,A ;数字量D/A转换器 INCA ;数字量逐次加1SJMP LOOP当输入数字量从0开始,逐次加1进行D/A转换,模拟量与其成正比输出。当A=FFH时,再加1则溢出清0,模拟输出又为0,然后又重新重复上述过程,如此循环,输出的波形就是锯齿波,如图11-4所示。1718实际上,每一上升斜边要分成256个小台阶,每个小台阶暂留时间为执行后三条指令所需要的时间。因此“INCA”指令后插入NOP指令或延时程序,则可改变锯齿波频率。18图11-4DAC0832产生的

13、锯齿波输出19三角波的产生输出的三角波如图11-5所示。19图11-5DAC0832产生的三角波输出参考程序如下。2020vO 矩形波的产生输出的矩形波如图11-6所示。21图11-6DAC0832产生的矩形波输出22DELAY1、DELAY2为两个延时程序,分别决定输出的矩形波高、低电平时的持续宽度。矩形波频率也可用延时方法改变。2223(2)双缓冲方式多路的D/A转换要求同步输出时,必须采用双缓冲同步方式。此方式工作时,数字量的输入锁存和D/A转换输出是分两步完成的。单片机必须通过LE1*来锁存待转换的数字量,通过LE2*来启动D/A转换(见图11-2)。因此,双缓冲方式下,DAC0832

14、应该为单片机提供两个I/O端口。AT89S51单片机和DAC0832在双缓冲方式下的连接如图11-7所示。232424图11-7单片机和两片DAC0832的双缓冲方式接口电路25由图11-7可见,译码器的FDH(即译码器输入为FDH时)和FEH分别为1#与2#DAC0832的第一级“8位输入寄存器”的端口地址,而FFH共同控制1#和2#DAC0832进行D/A转换的第二级“8位DAC寄存器”端口地址。若把图11-7中DAC输出的模拟电压Vx和Vy来控制X-Y绘图仪,则应把Vx和Vy分别加到X-Y绘图仪的X通道和Y通道,而X-Y绘图仪由X、Y两个方向的步进电机驱动,其中一个电机控制绘笔沿X方向运

15、动;另一个电机控制绘笔沿Y方向运动。因此对X-Y绘图仪的控制有一基本要求:就是两路模拟信号要同步输出,使绘制的曲线光滑。如果不同步输出,例如先输出X通道的模拟电压,再输出Y通道的模拟电压,则绘图笔先向X方向移动,再向Y方向移动,此时绘制的曲线就是阶梯状的。通过本例,也就不难理解为什么DAC设置双缓冲方式的目的所在。2526l【例11-2】设AT89S51单片机内部RAM中有两个长度为20的数据块,其起始地址为分别为addr1和addr2,根据图11-7,编写把addr1和addrr2中的数据从1#和2#DAC0832同步输出的程序。程序中addr1和addr2中的数据,即为绘图仪所绘制曲线的x

16、、y坐标点。由图11-7可知,DAC0832各端口地址为:lFDH:1#DAC0832第一级“8位输入寄存器”的端口地址lFEH:2#DAC0832第一级“8位输入寄存器”的端口地址lFFH:1#和2#DAC0832共同的第二级“8位DAC寄存器”端口地址程序首先使单片机工作寄存器0区的R1指向addr1;1区的R1指向addr2;0区工作寄存器的R2存放数据块长度;0区和1区工作寄存器区的R0指向DAC端口地址。参考程序如下:26272728282DAC0832的双极性的电压输出除了需要DAC0832为单极性模拟电压输出外,在有些场合则要求DAC0832双极性模拟电压输出,只需改变DAC0832的外部连线,即可实现双极性模拟电压输出,下面简单介绍。29在需要用到双极性电压输出的场合下,可以按照图11-8所示接线。图中,DAC0832的8位数字量由单片机送来,A1和A2均为运算放大器,vo通过2R电阻反馈到运算放大器A2的“-”输入端,G点为虚拟地,其他的电路连接如图11-8所示。由基尔霍夫定律列出的方程组可解得:29图11-8双极性DAC的接法3030由上式可知,当单片机输出给DAC

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号