《单片机及转换器.ppt》由会员分享,可在线阅读,更多相关《单片机及转换器.ppt(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机及转换器现在学习的是第1页,共23页概概 述述 在微机过程控制和数据采集等系统中,经常要对在微机过程控制和数据采集等系统中,经常要对过程参数过程参数进行测量和控制进行测量和控制。连续变化的物理量连续变化的物理量如:温度、压力、流量如:温度、压力、流量 速度、位移速度、位移 等等等等 物理过程物理过程微微 机机传感器传感器A/DD/A执行机构执行机构物理过程物理过程v/iDataData过程控制示意图过程控制示意图模拟量模拟量现在学习的是第2页,共23页D/A转换接口扩展转换接口扩展现在学习的是第3页,共23页8 8位位CMOSCMOS数模转换芯片数模转换芯片 DAC 0832DAC 08
2、32: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封装封装8 8位位D/A,D/A,分辨率分辨率=Vref/256=Vref/256CMOSCMOS低功耗器件低功耗器件,+5,+5+15V+15V 单电源供电单电源供电电流电流输出型器件输出型器件(需外接运放需外接运放)具有双缓冲控制输出具有双缓冲控
3、制输出采用采用T T型电阻解码网络结构型电阻解码网络结构参考电压源参考电压源,-10,-10+10V+10V一一 单片机与单片机与D/AD/A转换器的接口转换器的接口现在学习的是第4页,共23页DAC 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封装封装D0
4、D7:8位数字量输入端位数字量输入端/CS:片选端,低有效片选端,低有效ILE:数据锁存允许数据锁存允许,高有效高有效/WR1:写控制信号写控制信号1,低有效低有效/WR2:写控制信号写控制信号2,低有效低有效/XFER:数据传送控制信号数据传送控制信号Iout1:电流输出端电流输出端1Iout2:电流输出端电流输出端2Rfb:内置反馈电阻端内置反馈电阻端Vref:参考电压源参考电压源,-10+10VDGND:数字量地:数字量地AGND:模拟量地:模拟量地Vcc:+5+15V单电源供电端单电源供电端现在学习的是第5页,共23页DAC0832DAC0832 内部结构框图内部结构框图D0D7:8位
5、数字量输入端位数字量输入端/CS:片选端,低有效片选端,低有效ILE:数据锁存允许数据锁存允许,高有效高有效/WR1:写控制信号写控制信号1,低有效低有效/WR2:写控制信号写控制信号2,低有效低有效/XFER:数据传送控制信号数据传送控制信号Iout1:电流输出端电流输出端1Iout2:电流输出端电流输出端2Rfb:内置反馈电阻端内置反馈电阻端Vref:参考电压源参考电压源,-10+10VDGND:数字量地:数字量地AGND:模拟量地:模拟量地Vcc:+5+15V单电源供电端单电源供电端&111 11 10 00 00 00 01 11 1LE2LE2ILEILECECEWR1WR1WR2W
6、R2XFERXFERD7D7D0D0LE1LE1输输入入寄寄存存器器寄寄存存器器DACDAC转转换换器器D/AD/AVrefVrefIout2Iout2Iout1Iout1RfbRfbLE=1LE=1,Q Q 跟随跟随 D DLE=0LE=0,Q Q 锁存锁存 D D现在学习的是第6页,共23页DAC0832 DAC0832 与单片机的连接与单片机的连接89C5189C51单片机单片机DAC 0832DAC 0832P0.0P0.0P0.7P0.7P2.0P2.08 8位位DI0DI0DI7DI7EAEAWRWRXFERXFERCSCS+5V+5V6MHz6MHz30Px230Px2WR1WR
7、1WR2WR2+5V+5VVccVccVrefVrefILEILE+uA741uA741-12V-12V+12V+12VGNDGNDAGNDAGNDDGNDDGNDIout1Iout1Iout2Iout2RfbRfb接接示示波波器器输出于数字量输出于数字量DATADATA相对应模拟量:相对应模拟量:MOVMOVDPTRDPTR,#0FEFFH#0FEFFHMOVMOVA A,#DATA#DATAMOVXMOVXDPTR,ADPTR,A现在学习的是第7页,共23页输入数字量输入数字量模拟量输出模拟量输出(V)MSB LSB1 1 1 1 1 1 1 1VREF(255/256)1 0 0 0 0
8、 0 1 0VREF(130/256)1 0 0 0 0 0 0 0VREF(128/256)0 1 1 1 1 1 1 1VREF(127/256)0 0 0 0 0 0 0 0VREF(0/256)单极性输出单极性输出D/A关系关系数数字字量量与与模模拟拟量量的的转转换换关关系系:现在学习的是第8页,共23页DAC DAC 0832 0832 常常 见见 的的 几几 种种 用用 法法 为寄存命令。当为寄存命令。当 =1=1时,寄存器的输出随输入变化;时,寄存器的输出随输入变化;=0=0时,数据时,数据锁存在寄存器中,而不随输入数据的变化而变化锁存在寄存器中,而不随输入数据的变化而变化 当当
9、ILE=1,=0ILE=1,=0,=0=0时,时,=1=1,允许数据输入,而当,允许数据输入,而当 =1=1时,时,=0 =0 则数据被锁存则数据被锁存 当当 和和 均为低电平时,均为低电平时,=1=1,此时允许,此时允许D/AD/A转换,否则转换,否则 =0=0,将数据锁存于,将数据锁存于DACDAC寄存器中寄存器中现在学习的是第9页,共23页DAC DAC 0832 0832 常常 见见 的的 几几 种种 用用 法法 (a):DAC(a):DAC寄存器直通方式寄存器直通方式 (b):(b):输入寄存器直通方式输入寄存器直通方式 (c):(c):两个寄存器同时选通及锁存方式两个寄存器同时选通
10、及锁存方式 现在学习的是第10页,共23页DAC0832DAC0832 常见的几种用法常见的几种用法&111 11 10 00 00 00 01 11 1LE2LE2ILEILECECEWR1WR1WR2WR2XFERXFERD7D7D0D0LE1LE1输输入入寄寄存存器器寄寄存存器器DACDAC转转换换器器D/AD/AVrefVrefIout2Iout2Iout1Iout1RfbRfbLE=1LE=1,Q Q 跟随跟随 D DLE=0LE=0,Q Q 锁存锁存 D D直通方式直通方式:输入寄存器和输入寄存器和DACDAC寄存器共用一个地址,同时选通输出。寄存器共用一个地址,同时选通输出。1&
11、或非门或非门非与门非与门输入任一为输入任一为“1 1”输出皆为输出皆为“0 0”输入全为输入全为“0 0”,输出才为,输出才为“1 1”输入全为输入全为“0 0”,输出才为,输出才为“1 1”输入任一为输入任一为“1 1”输出皆为输出皆为“0 0”双缓冲器方式双缓冲器方式:输入寄存器和输入寄存器和DACDAC寄存器分配有各自的地址,可分别选通用同时输出寄存器分配有各自的地址,可分别选通用同时输出多路模拟信号。多路模拟信号。现在学习的是第11页,共23页【例9-6】在图9-30的输出端Vout产生1.25V的电压输出。解 Vout=(D/256)Vref,而Vref=5V,且XFER、CS和WR
12、信号常有效,因此使D=64即可输出要求的电压。汇编程序C语言程序 MOV P1,#64#include P1=64;现在学习的是第12页,共23页【例9-7】在图9-31的输出端Vout产生2.5V的电压输出,设Vref为5V。解 Vout=(D/256)Vref,使D=128可输出要求的电压,且需要进行一次对DAC0832的写操作,写地址选择为7000H。汇编程序C语言程序 MOV DPTR,#7000H MOV A,#128MOVX DPTR,A#include XBYTE0 x7000=128;现在学习的是第13页,共23页现在学习的是第14页,共23页DAC0832 DAC0832 的
13、编程应用举例的编程应用举例例例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;高电平高电平 MOVX DPTR,A;MOVX DPTR,A;送转换送转换 LCALL DMS2 ;LCALL DMS2 ;高宽度高宽度 SJMP LLSJMP LLMOV AMOV A,#00H ;#
14、00H ;起始值起始值 MOV DPTR,#0FEFFHMOV DPTR,#0FEFFHMMMM:MOVX DPTR,A;MOVX DPTR,A;送转换送转换 INC AINC A NOP NOP NOP NOP NOP ;NOP ;决定坡度决定坡度 SJMP MMSJMP MM现在学习的是第15页,共23页DAC0832DAC0832编程应用举例:编程应用举例:例例3 3产生三角波产生三角波 MOV A MOV A,#00H#00H MOV DPTR,#0FEFFH MOV DPTR,#0FEFFHSS1:MOVX DPTR,A;SS1:MOVX DPTR,A;送转换送转换 NOPNOP N
15、OP 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同样的编程思路,若要产生同样的编程思路,若要产生如下的梯形波也很容易:如下的梯形波也很容易:三角波三角波梯形波梯形波现在学习的是第16页,共23页例例4 4 正弦波电压输出正弦波电压输出正弦波电压输出为双极性电压,最简单的办法是将一个周期内电压变化的幅值正弦波电压
16、输出为双极性电压,最简单的办法是将一个周期内电压变化的幅值(-5V+5V)按按8位位D/A分辨率分为分辨率分为256个数值列成表格,然后依次将这些数字量送入个数值列成表格,然后依次将这些数字量送入D/A转转换输出。只要循环不断地送数,在输出端换输出。只要循环不断地送数,在输出端就能获得正弦波输出。就能获得正弦波输出。SIN:MOV R7,#00H DAS0:MOV A,R7 ;MOV DPTR,#TABH;设指针;设指针 MOVC A,A+DPTR ;取数据;取数据 MOV DPTR,#8000H ;MOVX DPTR,A ;送;送D/A转换转换 INC R7 ;修改偏移量;修改偏移量 AJM
17、P 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,80H现在学习的是第17页,共23页A/D转换接口扩展转换接口扩展现在学习的是第18页,共23页IN3 IN2IN3 IN2IN4 IN4 IN1IN1IN5 IN5 IN0IN0IN6 ADDAIN6 ADDAIN7 ADDBIN7 ADDBSTART ADDC START ADDC EOC EOC ALEALED3 D7D3 D7OE OE D6D6CLK D5CLK
18、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 Vin Vin范围范围:单极性单极性0 0+5V+5V逐次逼近逐次逼近结构结构每次转换时间每次转换时间:100100 S S 60 60个时钟周期个时钟周期,
19、fmax=,fmax=640KHz640KHz (推荐推荐CLK=500KHzCLK=500KHz)转换结果读取方式转换结果读取方式:延时读数延时读数 查询查询EOC=1 EOC=1 EOCEOC申请中断申请中断现在学习的是第19页,共23页ADC0809 ADC0809 结构框图结构框图8 8 通通道多道多路开路开关关IN0IN0IN7IN7地址地址译码译码锁存锁存ADDAADDAADDBADDBADDCADDCALEALE控制逻辑与时序控制逻辑与时序D/AD/A转换器转换器SARSARVinVin比较器比较器输输出出锁锁存存器器STARTSTARTCLKCLKEOCEOCD0D0D7D7+
20、Vref+Vref-Vref-VrefOEOEVstVst+-现在学习的是第20页,共23页IN3 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-D1 D2D1 D2ADC0809IN0IN0IN7IN7:8 8通道模拟量输入端通道模拟量输入端 D0D0D7D7:8 8位数字量输出
21、端位数字量输出端ADDCADDC、ADDBADDB、ADDAADDA:接地址锁存器的低三位地址接地址锁存器的低三位地址ALEALE:地址锁存允许控制信号地址锁存允许控制信号STARTSTART:清:清0 0内寄存器内寄存器,启动转换启动转换OEOE:允许读允许读A/DA/D结果结果,高有效高有效CLKCLK:时钟输入端:时钟输入端,应应640KHzEOCEOC:转换结束时为高:转换结束时为高VccVcc:+5V+5VVref+Vref+:参考电压,:参考电压,+5V+5VVref-Vref-:0V0VADC 0809ADC 0809引脚定义引脚定义:现在学习的是第21页,共23页ADC0809
22、 ADC0809 与单片机的连接与单片机的连接89C51单片机单片机ADC 0809锁存器锁存器74LS373P0.0-P0.7ALEP2.08DQ0ALECLKADDAD0-D7GEAOESTARTRDWROEQ1Q2ADDBADDC+5VINT1EOC1112MHz12MHz30Px230Px2 6 6口地址可口地址可以为:以为:0FE000FE000FE07H 0FE07H 也可为:也可为:0FEF00FEF0 0FEF7H0FEF7HA/D转换程序:转换程序:MOV DPTR,#0FE00H;置;置IN0通道地址通道地址 MOV A,#00 ;累加器里任意赋一个值累加器里任意赋一个值
23、MOVX DPTR,A;启动启动A/D转换转换 LCALL DELAY;等待转换结束等待转换结束 MOVX A,DPTR;取转换结果取转换结果现在学习的是第22页,共23页2、最后执行执行执行执行MOV AMOV A,DPTRDPTR产生RD信号使OE端有效,打开输出锁存器三态门,8位数据就读入CPU中。启动启动ADC0809的工作过程的工作过程1、先送通道号地址到、先送通道号地址到A、B、C,由,由ALE信号锁存通道号地址,然后让信号锁存通道号地址,然后让START有效启动有效启动A/D转换。转换。即执行一条即执行一条即执行一条即执行一条MOVX DPTRMOVX DPTR,A指令产生指令产生WR信号,使信号,使ALE、START有效,锁存通道号并启有效,锁存通道号并启动动A/D转换。转换。A/D转换完毕,转换完毕,EOC端发出一正脉冲,表示转换结束。端发出一正脉冲,表示转换结束。锁存器锁存器74LS373P0.0-P0.7ALEP2.08DQ0ALECLKADDAD0-D7GEAOESTARTRDWROEQ1Q2ADDBADDC+5VINT1EOC1112MHz12MHz30Px230Px2 6 6现在学习的是第23页,共23页
限制150内