单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术

上传人:E**** 文档编号:89491361 上传时间:2019-05-25 格式:PPT 页数:63 大小:2.17MB
返回 下载 相关 举报
单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术_第1页
第1页 / 共63页
单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术_第2页
第2页 / 共63页
单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术_第3页
第3页 / 共63页
单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术_第4页
第4页 / 共63页
单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术》由会员分享,可在线阅读,更多相关《单片机原理与应用---基于Proteus虚拟仿真技术 第2版 教学课件 ppt 作者 徐爱钧 第8章 数模与模数转换接口技术(63页珍藏版)》请在金锄头文库上搜索。

1、D/A和A/D转换器接口,A/D及D/A转换器的性能指标,分辨率(Resolution) 分辨率是指A/D转换器能分辨的最小输出模拟增量,取决于输入数字量的二进制位数。 转换精度(Conversion Accuracy) 转换精度指满量程时ADC的实际模拟输出值和理论值的接近程度。 量程(满刻度范围FULL Scale Range) 量程是指输入模拟电压的变化范围。例如某转换器具有10V的单极性范围或-5+5V的双极性范围。则它们的量程都为10V。满刻度只是个名义值,实际的A/D,D/A转换器的最大输出值总是比满刻度值小1/2n,n为转换器的位数。例如12位的A/D转换器,其满刻度值为10V,

2、而实际的最大输出值为:,A/D转换器的主要技术指标,线性度(Linearity) 线性度是指ADC的实际转换特性曲线和理想直线之间的最大偏移差。 转换时间(Conversion Time) 从发出启动转换开始直至获得稳定的二进代码所需的时间称为转换时间,转换时间与转换器工作原理及其位数有关,同种工作原理的转换器,通常位数越多,其转换时间越长。,D/A转换器的主要技术指标,D/A转换器的主要技术指标与A/D转换器基本相同,只是转换时间的概念略有不同,D/A转换器的转换时间又叫建立时间,它是指当输入的二进制代码从最小值突然跳变至最大值时,其模拟输出电压相应的满度跳跃并达到稳定所需的时间。一般而言,

3、D/A的转换时间比A/D要短得多。,DAC芯片类型及接口方法,各种类型的DAC芯片都具有数字量输入端和模拟量输出端及基准电压端。数字输入端有以下几种类型:无数据锁存器,带单数据锁存器,带双数据锁存器,可接收串行数字输入。第1种在与单片机接口时,要外加锁存器,第2种和第3种可直接与单片机接口,第4种与单片机接口十分简单,接收数据较慢,适用于远距离现场控制的场合。模拟量输出有两种方式:电压输出及电流输出。电压输出的DAC芯片相当于一个电压源,其内阻很小,选用这种芯片时,与它匹配的负载电阻应较大。电流输出的芯片相当于电流源,其内阻较大,选用这种芯片时,负载电阻不可太大。,在实际应用中,常选用电流输出

4、的DAC芯片实 现电压输出,如图所示:,无内部数据锁存器的DAC芯片,尤其是分辩率高于8位的DAC芯 片,在设计与8位单片机接口时,要外加数据锁存器作为缓 冲器。下图是一种单缓冲器接口。,在10位DAC芯片与8位单片机之间接入两个锁存器,锁存器A锁存10位数据 中的低8位,锁存器B锁存高2位。单片机分两次输出数据,先输出低8位数 据到锁存器A,后输出高2位数据到锁存器B。设锁存器A和锁存器B的地址 分别为002CH和002DH,则执行下列指令后完成一次D/A转换: MOV DPTR,#002CH MOV A,#DATA8 MOVX DPTR,A ;输出低8位 INC DPTR MOV A,#D

5、ATA2 MOVX DPTR,A ;输出高2位 这种接口存在一个问题,就是在输出低8位数据和高2位数据之间,会产生 “毛剌”现象,如图3.3(b)所示。假设两个锁存器原来的数据为 0001111000,现在要求转换的数据为0100001011,新数据分两次输出, 第一次输出低8位,这时DAC将把新的8位数据的与原来数据的高2位一起 组成0000001011转换成输出电压,而该电压是不需要的,即所谓“毛刺”。,避免产生毛刺的方法之一是采用双组缓冲器结 构,如下图所示。,单片机先把低8位数据选通输入锁存器1中,然后将高2位数据选 通输入锁存器3中,并同时选通锁存器2,使锁存器2与锁存器3 组成10

6、位锁存器向DAC同时送入10位数据由DAC转换成输出电 压。当地址如图中所示时,执行以下程序完成一次D/A转换: MOV DPTR,#6000H MOV A,#DATA8 MOVX DPTR,A ;输出低8位数据 INC DPTR MOV A,#DATA2 MOVX DPTR,A ;输出高2位,并同时输出10位数据,D/A转换器芯片DAC0832 DAC0832是一个8位D/A转换器芯片,单电源供电,从+5V+15V均可正常工作,基准电压的范围为10V,电流建立时间为1s,CMOS工艺,低功耗20mm。其内部结构由1个8位输入寄存器、1个8位DAC寄存器和1个8位D/A转换器组成。,DAC08

7、32的内部结构,DAC0832是典型的带内部双数据缓冲器的8位D/A芯片。图中LE是寄存命令,当LE =1时,寄存器输出随输入变化,当LE =0时,数据锁存在寄存器中。当ILE端为高电平,CS与WR1同时为低电平时,使得LE1 =1;当WR1变为高电平时,输入寄存器便将输入数据锁存。当XFER与WR2同时为低电平时,使得LE2 =1,DAC寄存器的输出随寄存器的输入变化,WR2上升沿将输入寄存器的信息锁存在该寄存器中。,DAC0832的工作方式 DAC0832利用WR1 、 WR2 、ILE、XFER 控制信号可以构成三种不同的工作方式。 直通方式 WR1= WR2 =0时,数据可以从输入端经

8、两个寄存器直接进入D/A转换器。 2)单缓冲方式两个寄存器之一始终处于直通,即WR1=0或WR2=0,另一个寄存器处于受控状态。 3)双缓冲方式 两个寄存器均处于受控状态。这种工作方式适合于多模拟信号同时输出的应用场合。,单缓冲方式的接口与应用 1单缓冲方式连接 所谓单缓冲方式就是使DAC0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控锁存方式。 为使DAC寄存器处于直通方式,应使WR2 =0和XFER=0。为此可把这两个信号固定接地,或如电路中把WR2与WR1相连,把XFER与CS相连。 为使输入寄存器处于受控锁存方式,应把WR1接8051的WR,ILE接高电平。此外还应把CS

9、接高位地址线或地址译码输出,以便于对输入寄存器进行选择。,DAC0832单缓冲方式接口,2单缓冲方式应用举例-波形发生器 在一些控制应用中,需要有一个线性增长的电压(锯齿波)来控制检测过程、移动记录笔或移动电子束等。对此可通过在DAC0832的输出端接运算放大器,由运算放大器产生锯齿波来实现,其电路连接如图所示。,图中的DAC0832工作于单缓冲方式,其中输入寄存器受控,而DAC寄存器直通。假定输入寄存器地址为7FFFH,产生锯齿波的程序清单如下: MOV A, #00H ;取下限值 MOV DPTR,#7FFFH ;指向0832口地址 MM: MOVX DPTR,A ;输出 INC A ;延

10、时 NOP NOP NOP SJMP MM ;反复 执行上述程序就可得到如下图所示的锯齿波。,几点说明: (1)程序每循环一次,A加1,因此实际上锯齿波的上升边是由256个小阶梯构成的,但由于阶梯很小,所以宏观上看就如图中所画的先行增长锯齿波。,(2)可通过循环程序段的机器周期数,计算出锯齿波的周期。并可根据需要,通过延时的方法来改变波形周期。若要改变锯齿波的频率,可在AJMP MM指令前加入延迟程序即可。延时较短时可用NOP指令实现(本程序就是如此),需要延时较长时,可以使用一个延长子程序。延迟时间不同,波形周期不同,锯齿波的斜率就不同。 (3)通过A加1,可得到正向的锯齿波,反之A减1可得

11、到负向的锯齿波。 (4) 程序中A的变化范围是0255,因此得到的锯齿波是满幅度的。如要求得到非满幅锯齿波,可通过计算求的数字量的处置和终值,然后在程序中通过置初值和终值的方法实现。,产生矩形波电压的参考程序: ORG 1100H START: MOV DPTR , #7FFFH ;送DAC0832口地址 LOOP: MOV A , #dataH ;送高电平数据 MOVX DPTR , A LCALL DELAYH ;调用延时子程序 MOV A , #dataL ;送低电平数据 MOVX DPTR , A LCALL DELAYL ;调用延时子程序 SJMP LCALL,执行上述程序就可得到如

12、下图所示的矩形波,几点说明: (1)以上程序产生的是矩形波,其低点平的宽度由延时子程序DELAYL所延时的时间来决定,高电平的宽度则由DELAYH所延时的时间决定。 (2) 改变延时子程序DELAYL和的DELAYH延时时间,就可改变矩形波上下沿的宽度。若DELAYL=DELAYH(两者延时一样),则输出的是方波。 (3) 改变上限值或下限值便可改变矩形波的幅值;单极性输出时为0-5V或0+5V;双极性输出时为-5V+5V。,双缓冲方式的接口与应用 在多路D/A转换的情况下,若要求同步转换输出,必须采用双缓冲方式。DAC0832采用双缓冲方式时,数字量的输入锁存和D/A转换输出是分两步进行的。

13、 第一, CPU分时向各路D/A转换器输入要转换的数字量并锁存在各自的输入寄存器中。 第二,CPU对所有的D/A转换器发出控制信号,使各路输入寄存器中的数据进入DAC寄存器,实现同步转换输出。 下图为两片DAC0832与8031接实现的双缓冲方式连接电路,能实现两路同步输出。,8051与DAC0832的双缓冲方式接口,实现两路同步输出的程序如下: MOV DPTR,#0DFFFH;送0832(1)输入锁存器地址 MOV A,#data1 ;data1送0832(1)输入锁存器 MOVX DPTR,A ; MOV DPTR,#0BFFFH;送0832(2)输入锁存器地址 MOV A,#data2

14、 ;data2送0832(2)输入锁存器 MOVX DPTR,A ; MOV DPTR,#7FFFH ;送两路DAC寄存器地址 MOVX DPTR,A ;两路数据同步转换输出,8051与12位DAC的接口 DAC1208的内部结构和原理 与DAC0832相似,DAC1208也是双缓冲器结构,输入控制线与DAC0832也很相似,和用来控制输入寄存器,和用来控制DAC寄存器,但增加了一条控制线BYTE1/ BYTE2 ,用来区分输入8位寄存器和4位寄存器,当BYTE1/BYTE2= 1时,两个寄存器都被选中,BYTE1/BYTE2=0时,只选中4位输入寄存器。,DAC1208内部结构框图,8051

15、和DAC1208的连接,MOV 40H,#0FFH ;模拟电压高8位数据 MOV 41H,#0FH ;模拟电压低4位数据 MOV DPTR,#07FFFH ;选通1208高8位输入寄存器地址 MOV R1,#40H MOV A,R1 MOVX DPTR,A ;输出高8位数据 MOV DPTR,#07EFFH ;选通1208低4位输入寄存器地址 MOV R1,#41H MOV A,R1 MOVX DPTR,A ;输出低4位地址数据 MOV DPTR,#0FFFFH ;选通1208DAC寄存器地址 MOVX DPTR,A ;完成12位D/A转换 SJMP $,DAC1208的DAC寄存器地址为FF

16、FFH。DAC1208采用双缓冲器工作方式,送数时应先送高8位数据DI11DI4,再送低4位数据DI3DI0,送完12位数据后再打开DAC寄存器,设12位数据存放在内部RAM区的40H和41H单元中,高8位存于40H,低4位存于41H,转换程序如下:,串行DAC与8051单片机的接口,串行接口的DAC芯片MAX517与8051单片机的接口简单,与标准I2C总线兼容,具有高达400kbps的通信速率。基准输入可为双极性,输出放大为双极性工作方式,8引脚DIP封装引脚排列如下 :,MAX517采用I2C串行总线,大大简化了与单片机的接口电路设计。 I2C总线采用位、双向串行数据传送方式,标准传送速率为100kB/s,快

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

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

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