51单片机AD及DA转换器

上传人:仙*** 文档编号:181904511 上传时间:2023-01-18 格式:PPT 页数:27 大小:476KB
收藏 版权申诉 举报 下载
51单片机AD及DA转换器_第1页
第1页 / 共27页
51单片机AD及DA转换器_第2页
第2页 / 共27页
51单片机AD及DA转换器_第3页
第3页 / 共27页
资源描述:

《51单片机AD及DA转换器》由会员分享,可在线阅读,更多相关《51单片机AD及DA转换器(27页珍藏版)》请在装配图网上搜索。

1、2021/7/11 数模及模数转换器接口数模及模数转换器接口 l数模变换数模变换DACDAC和模数变换和模数变换ADCADC接口器件原理接口器件原理lDAC0832DAC0832原理及应用(波形发生器)原理及应用(波形发生器)lADC0804ADC0804原理及应用(电压测量)原理及应用(电压测量)要求:理解掌握常用数模变换理解掌握常用数模变换DACDAC和模数变换和模数变换ADCADC器器件(件(DAC0832DAC0832、ADC0804ADC0804)的应用方法及和单片)的应用方法及和单片微机的接口与应用编程实例微机的接口与应用编程实例 2021/7/12概概 述述 在微机过程控制和数据

2、采集等系统中,经常要对在微机过程控制和数据采集等系统中,经常要对过程参数过程参数进行测量和控制进行测量和控制。连续变化的物理量连续变化的物理量如:温度、压力、流量如:温度、压力、流量 速度、位移速度、位移 等等等等 物理过程物理过程微微 机机传感器传感器A/DD/A执行机构执行机构物理过程物理过程v/iDataData过程控制示意图过程控制示意图模拟量模拟量2021/7/13D/AD/A转换接口扩展转换接口扩展2021/7/148 8位位CMOSCMOS数模转换芯片数模转换芯片 DAC 0832DAC 0832:CSCS VCC VCCWR1WR1 ILEILEAGND AGND WR2WR2

3、D3 D3 XFERXFERD2 D4D2 D4D1 D5 D1 D5 D0 D0 D6D6VrefVref D7 D7RfbRfb Iout2Iout2DGND DGND Iout1Iout1DAC0832DAC083220 PIN DIP20 PIN DIP封装封装8 8位位D/A,D/A,分辨率分辨率=Vref/256=Vref/256CMOSCMOS低功耗器件低功耗器件,+5,+5+15V+15V 单电源供电单电源供电电流电流输出型器件输出型器件(需外接运放需外接运放)具有双缓冲控制输出具有双缓冲控制输出采用采用T T型电阻解码网络结构型电阻解码网络结构参考电压源参考电压源,-10,-

4、10+10V+10V一一 单片机与单片机与D/AD/A转换器的接口转换器的接口2021/7/15DAC 0832DAC 0832 引脚定义引脚定义CSCS VCC VCCWR1WR1 ILEILEAGND AGND WR2WR2D3 D3 XFERXFERD2 D4D2 D4D1 D5 D1 D5 D0 D0 D6D6VrefVref D7 D7RfbRfb Iout2Iout2DGND DGND Iout1Iout1DAC0832DAC083220 PIN DIP20 PIN DIP封装封装D0D7:8位数字量输入端位数字量输入端/CS:片选端,低有效片选端,低有效ILE:数据锁存允许数据锁

5、存允许,高有效高有效/WR1:写控制信号写控制信号1,低有效低有效/WR2:写控制信号写控制信号2,低有效低有效/XFER:数据传送控制信号数据传送控制信号Iout1:电流输出端电流输出端1Iout2:电流输出端电流输出端2Rfb:内置反馈电阻端内置反馈电阻端Vref:参考电压源参考电压源,-10+10VDGND:数字量地:数字量地AGND:模拟量地:模拟量地Vcc:+5+15V单电源供电端单电源供电端2021/7/16DAC0832DAC0832 内部结构框图内部结构框图D0D7:8位数字量输入端位数字量输入端/CS:片选端,低有效片选端,低有效ILE:数据锁存允许数据锁存允许,高有效高有效

6、/WR1:写控制信号写控制信号1,低有效低有效/WR2:写控制信号写控制信号2,低有效低有效/XFER:数据传送控制信号数据传送控制信号Iout1:电流输出端电流输出端1Iout2:电流输出端电流输出端2Rfb:内置反馈电阻端内置反馈电阻端Vref:参考电压源参考电压源,-10+10VDGND:数字量地:数字量地AGND:模拟量地:模拟量地Vcc:+5+15V单电源供电端单电源供电端&111 11 10 00 00 00 01 11 1LE2LE2ILEILECECEWR1WR1WR2WR2XFERXFERD7D7D0D0LE1LE1输输入入寄寄存存器器寄寄存存器器DACDAC转转换换器器D/

7、AD/AVrefVrefIout2Iout2Iout1Iout1RfbRfbLE=1LE=1,Q Q 跟随跟随 D DLE=0LE=0,Q Q 锁存锁存 D DLELE2021/7/17DAC0832 DAC0832 与单片机的连接与单片机的连接89C5189C51单片机单片机DAC 0832DAC 0832P0.0P0.7P0.0P0.7P2.0P2.08 8位位DI0DI7DI0DI7EAEAWRWRXFERXFERCSCS+5V+5V6MHz6MHz30Px230Px2WR1WR1WR2WR2+5V+5VVccVccVrefVrefILEILE+uA741uA741-12V-12V+12

8、V+12VGNDGNDAGNDAGNDDGNDDGNDIout1Iout1Iout2Iout2RfbRfb接接示示波波器器输出于数字量输出于数字量DATADATA相对应模拟量:相对应模拟量:MOVMOVDPTRDPTR,#0FEFFH#0FEFFHMOVMOVA A,#DATA#DATAMOVXMOVXDPTR,ADPTR,A2021/7/18输入数字量输入数字量模拟量输出模拟量输出(V V)MSB LSBMSB LSB1 1 1 1 1 1 1 11 1 1 1 1 1 1 1V VREFREF(255/256)(255/256)1 0 0 0 0 0 1 01 0 0 0 0 0 1 0V

9、 VREFREF(130/256)(130/256)1 0 0 0 0 0 0 01 0 0 0 0 0 0 0V VREFREF(128/256)(128/256)0 1 1 1 1 1 1 10 1 1 1 1 1 1 1V VREFREF(127/256)(127/256)0 0 0 0 0 0 0 00 0 0 0 0 0 0 0V VREFREF(0/256)(0/256)单极性输出单极性输出D/AD/A关系关系数数字字量量与与模模拟拟量量的的转转换换关关系:系:2021/7/19DAC DAC 0832 0832 常常 见见 的的 几几 种种 用用 法法 为寄存命令。当为寄存命令。

10、当 =1=1时,寄存器的输出随输入变化;时,寄存器的输出随输入变化;=0=0时,数据时,数据锁存在寄存器中,而不随输入数据的变化而变化锁存在寄存器中,而不随输入数据的变化而变化 LELELE 当当ILE=1,=0ILE=1,=0,=0=0时,时,=1=1,允许数据输入,而当,允许数据输入,而当 =1=1时,时,=0 =0 则数据被锁存则数据被锁存 CSWR11LEWR11LE 当当 和和 均为低电平时,均为低电平时,=1=1,此时允许,此时允许D/AD/A转换,否则转换,否则 =0=0,将数据锁存于,将数据锁存于DACDAC寄存器中寄存器中WR2XFER2LE2LE2021/7/110DAC

11、DAC 0832 0832 常常 见见 的的 几几 种种 用用 法法 (a):DAC(a):DAC寄存器直通方式寄存器直通方式 (b):(b):输入寄存器直通方式输入寄存器直通方式 (c):(c):两个寄存器同时选通及锁存方式两个寄存器同时选通及锁存方式 2021/7/111DAC0832DAC0832 常见的几种用法常见的几种用法&111 11 10 00 00 00 01 11 1LE2LE2ILEILECECEWR1WR1WR2WR2XFERXFERD7D7D0D0LE1LE1输输入入寄寄存存器器寄寄存存器器DACDAC转转换换器器D/AD/AVrefVrefIout2Iout2Iout

12、1Iout1RfbRfbLE=1LE=1,Q Q 跟随跟随 D DLE=0LE=0,Q Q 锁存锁存 D D直通方式直通方式:输入寄存器和输入寄存器和DACDAC寄存器共用一个地址,同时选通输出。寄存器共用一个地址,同时选通输出。1&或非门或非门非与门非与门输入任一为输入任一为“1”1”输出皆为输出皆为“0”0”输入全为输入全为“0”0”,输出才为输出才为“1”1”输入全为输入全为“0”0”,输出才为,输出才为“1”1”输入任一为输入任一为“1”1”输出皆为输出皆为“0”0”双缓冲器方式双缓冲器方式:输入寄存器和输入寄存器和DACDAC寄存器分配有各自的地址,可分别选通用同时输寄存器分配有各自

13、的地址,可分别选通用同时输出多路模拟信号。出多路模拟信号。2021/7/112【例9-6】在图9-30的输出端Vout产生1.25V的电压输出。解 Vout=(D/256)Vref,而Vref=5V,且XFER、CS和WR信号常有效,因此使D=64即可输出要求的电压。汇编程序C语言程序 MOV P1,#64#include P1=64;2021/7/113【例9-7】在图9-31的输出端Vout产生2.5V的电压输出,设Vref为5V。解 Vout=(D/256)Vref,使D=128可输出要求的电压,且需要进行一次对DAC0832的写操作,写地址选择为7000H。汇编程序C语言程序 MOV

14、DPTR,#7000H MOV A,#128MOVX DPTR,A#include XBYTE0 x7000=128;2021/7/1142021/7/115DAC0832 DAC0832 的编程应用举例的编程应用举例例例1 1 产生矩形波产生矩形波例例2 2 产生锯齿波产生锯齿波LL:LL:MOV AMOV A,#00H ;#00H ;低电平低电平 MOV DPTR,#0FEFFHMOV DPTR,#0FEFFH MOVX DPTR,A;MOVX DPTR,A;送转换送转换 LCALL DMS1 ;LCALL DMS1 ;低宽度低宽度 MOV AMOV A,#0FFH;#0FFH;高电平高电

15、平 MOVX DPTR,A;MOVX DPTR,A;送转换送转换 LCALL DMS2 ;LCALL DMS2 ;高宽度高宽度 SJMP LLSJMP LLMOV AMOV A,#00H ;#00H ;起始值起始值 MOV DPTR,#0FEFFHMOV DPTR,#0FEFFHMMMM:MOVX DPTR,A;MOVX DPTR,A;送转换送转换 INC AINC A NOP NOP NOP NOP NOP ;NOP ;决定坡度决定坡度 SJMP MMSJMP MM2021/7/116DAC0832DAC0832编程应用举例:编程应用举例:例例3 3产生三角波产生三角波 MOV A MOV

16、A,#00H#00H MOV DPTR,#0FEFFH MOV DPTR,#0FEFFHSS1:MOVX DPTR,A;SS1:MOVX DPTR,A;送转换送转换 NOPNOP NOP NOP NOP NOPSS2:SS2:INC A ;INC A ;等速上升等速上升 JNZ SS1JNZ SS1SS3:SS3:DEC ADEC A MOVX DPTR MOVX DPTR,A A NOP NOP NOP NOP NOP ;NOP ;等速下降等速下降 JNZ SS3JNZ SS3 SJMP SS2SJMP SS2同样的编程思路,若要产生同样的编程思路,若要产生如下的梯形波也很容易:如下的梯形波

17、也很容易:三角波三角波梯形波梯形波2021/7/117例例4 4 正弦波电压输出正弦波电压输出正弦波电压输出为双极性电压,最简单的办法是将一个周期内电压变化正弦波电压输出为双极性电压,最简单的办法是将一个周期内电压变化的幅值的幅值(-5V+5V)按按8位位D/A分辨率分为分辨率分为256个数值列成表格,然后依次个数值列成表格,然后依次将这些数字量送入将这些数字量送入D/A转换输出。只要循环不断地送数,在输出端转换输出。只要循环不断地送数,在输出端就能获得正弦波输出。就能获得正弦波输出。SIN:MOV R7,#00H DAS0:MOV A,R7 ;MOV DPTR,#TABH;设指针;设指针 M

18、OVC A,A+DPTR ;取数据;取数据 MOV DPTR,#8000H ;MOVX DPTR,A ;送;送D/A转换转换 INC R7 ;修改偏移量;修改偏移量 AJMP DAS0 ;TAB:DB 80H,83H,86H,89H,8DH,90H DB93H,96H,99H,9CH,9FH,0A2H DB 0A5H,0A8H,0ABH,0AEH DB 6FH,72H,76H,79H,7CH,80H2021/7/118A/DA/D转换接口扩展转换接口扩展2021/7/119IN3 IN2IN3 IN2IN4 IN4 IN1IN1IN5 IN5 IN0IN0IN6 ADDAIN6 ADDAIN7

19、 ADDBIN7 ADDBSTART ADDC START ADDC EOC EOC ALEALED3 D7D3 D7OE OE D6D6CLK D5CLK D5VCC D4VCC D4Vref+D0Vref+D0GND Vref-GND Vref-D1 D2D1 D2ADC08098 8位位CMOSCMOS模数转换芯片模数转换芯片ADC0809ADC08098 8位位A/D,A/D,量化间隔量化间隔=Vin/(256-1)=Vin/(256-1)CMOSCMOS低功耗器件低功耗器件8 8 通道通道多路开关输入切换电路多路开关输入切换电路单电源单电源+5+5,Vref=Vref=+5V+5V

20、Vin Vin范围范围:单极性单极性00+5V+5V逐次逼近逐次逼近结构结构每次转换时间每次转换时间:100100 S S 60 60个时钟周期个时钟周期,fmax=,fmax=640KHz640KHz (推荐推荐CLK=500KHzCLK=500KHz)转换结果读取方式转换结果读取方式:延时读数延时读数 查询查询EOC=1 EOC=1 EOCEOC申请中断申请中断2021/7/120ADC0809 ADC0809 结构框图结构框图8 8 通通道多道多路开路开关关IN0IN0IN7IN7地址地址译码译码锁存锁存ADDAADDAADDBADDBADDCADDCALEALE控制逻辑与时序控制逻辑与

21、时序D/AD/A转换器转换器SARSARVinVin比较器比较器输输出出锁锁存存器器STARTSTARTCLKCLKEOCEOCD0D0D7D7+Vref+Vref-Vref-VrefOEOEVstVst+-2021/7/121IN3 IN2IN3 IN2IN4 IN4 IN1IN1IN5 IN5 IN0IN0IN6 ADDAIN6 ADDAIN7 ADDBIN7 ADDBSTART ADDC START ADDC EOC EOC ALEALED3 D7D3 D7OE OE D6D6CLK D5CLK D5VCC D4VCC D4Vref+D0Vref+D0GND Vref-GND Vref-

22、D1 D2D1 D2ADC0809IN0IN7IN0IN7:8 8通道模拟量输入端通道模拟量输入端 D0D7D0D7:8 8位数字量输出端位数字量输出端ADDCADDC、ADDBADDB、ADDAADDA:接地址锁存器的低三位地址接地址锁存器的低三位地址ALEALE:地址锁存允许控制信号地址锁存允许控制信号STARTSTART:清:清0 0内寄存器内寄存器,启动转换启动转换OEOE:允许读允许读A/DA/D结果结果,高有效高有效CLKCLK:时钟输入端:时钟输入端,应应640KHzEOCEOC:转换结束时为高:转换结束时为高VccVcc:+5V+5VVref+Vref+:参考电压,:参考电压,

23、+5V+5VVref-Vref-:0V0VADC 0809ADC 0809引脚定义引脚定义:2021/7/122ADC0809 ADC0809 与单片机的连接与单片机的连接89C51单片机单片机ADC 0809锁存器锁存器74LS373P0.0-P0.7ALEP2.08DQ0ALECLKADDAD0-D7GEAOESTARTRDWROEQ1Q2ADDBADDC+5VINT1EOC1112MHz12MHz30Px230Px2 6 6口地址可口地址可以为:以为:0FE000FE000FE07H 0FE07H 也可为:也可为:0FEF00FEF0 0FEF7H0FEF7HA/D转换程序:转换程序:M

24、OV DPTR,#0FE00H;置;置IN0通道地址通道地址 MOV A,#00 ;累加器里任意赋一个值累加器里任意赋一个值 MOVX DPTR,A;启动启动A/D转换转换 LCALL DELAY;等待转换结束等待转换结束 MOVX A,DPTR;取转换结果取转换结果2021/7/1232、最后产生RD信号使OE端有效,打开输出锁存器三态门,8位数据就读入CPU中。启动启动ADC0809的工作过程的工作过程1、先送通道号地址到、先送通道号地址到A、B、C,由,由ALE信号锁存通道号地址,然后让信号锁存通道号地址,然后让START有有效启动效启动A/D转换。转换。,A指令产生指令产生WR信号,使

25、信号,使ALE、START有效,锁存有效,锁存通道号并启动通道号并启动A/D转换。转换。A/D转换完毕,转换完毕,EOC端发出一正脉冲,表示转换结束。端发出一正脉冲,表示转换结束。锁存器锁存器74LS373P0.0-P0.7ALEP2.08DQ0ALECLKADDAD0-D7GEAOESTARTRDWROEQ1Q2ADDBADDC+5VINT1EOC1112MHz12MHz30Px230Px2 6 62021/7/124 ORG 0000H ORG 0000H AJMP MAIN AJMP MAIN ORG ORG 0013H0013H ;外部中断外部中断1 1的中断矢量的中断矢量 AJMP

26、AJMP INTINTMAIN:MAIN:MOV R0,#0A0H MOV R0,#0A0H;存结果的缓冲区存结果的缓冲区:A0H-A7HA0H-A7H MOV R2,#08H MOV R2,#08H ;待采集的待采集的通道数为通道数为 8 8 SETB IT1 SETB IT1 ;选择选择下降沿下降沿触发中断触发中断 SETB EA SETB EA ;开中断开中断 SETB EX1SETB EX1 MOV DPTR,#MOV DPTR,#0FEF00FEF0H H;通道通道0 0的地址的地址 MOVX DPTR,A MOVX DPTR,A;启动转换。启动转换。注意注意:A=A=?HEREHE

27、RE:SJMP HERE SJMP HERE ;等待中断等待中断ADC0809ADC0809八路巡回中断式数据采集八路巡回中断式数据采集2021/7/125 ORG 0000HORG 0000H AJMP MAIN AJMP MAIN ORG 0013HORG 0013H AJMP INT AJMP INTMAIN:MOV R0,#0A0HMAIN:MOV R0,#0A0H MOV R2,#08H MOV R2,#08H SETB IT1 SETB IT1 SETB EA SETB EA SETB EX1 SETB EX1 MOV DPTR,#0FEF0H MOV DPTR,#0FEF0H M

28、OVX DPTR,A MOVX DPTR,AHEREHERE:SJMP HERESJMP HEREADC0809ADC0809八路巡回中断式数据采集八路巡回中断式数据采集INT:INT:MOVX AMOVX A,DPTR DPTR ;读数据读数据 MOV R0,A MOV R0,A ;数据放进缓存单元数据放进缓存单元 INC R0 INC R0 ;指向下一缓存指向下一缓存 INC DPTR INC DPTR;指向下一通道指向下一通道 DJNZ R2DJNZ R2,RTNRTN ;8;8 次未完就继续采集次未完就继续采集,;已完就关中断、停采集已完就关中断、停采集 CLR EACLR EA CLR EX1 CLR EX1 RETI RETIRTNRTN:MOVX DPTR,A:MOVX DPTR,A;启动采集启动采集 RETIRETI2021/7/126思考题思考题请编写请编写89C51单片机通过单片机通过DAC0832产产生锯齿波信号、三角波、梯形波的程序生锯齿波信号、三角波、梯形波的程序(可以为任意频率)。(可以为任意频率)。当当ADC0809对对8路模拟信号进行路模拟信号进行A/D转转换时,请编写用查询方式工作的采样程换时,请编写用查询方式工作的采样程序,序,8路采样值存放在路采样值存放在50H57H单元。单元。若有不当之处,请指正,谢谢!若有不当之处,请指正,谢谢!

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!