《《微机原理与应用教学资料》第十一章ad-da.ppt》由会员分享,可在线阅读,更多相关《《微机原理与应用教学资料》第十一章ad-da.ppt(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 1第十一章:第十一章:A/D和和D/A转换转换11-1 概述概述11-2 D/A转换转换11-3 A/D转换转换电气学院学习部资料库电气学院学习部资料库211-1 概述概述 一一.一个实时控制系统一个实时控制系统 图图11-1 包含包含D/A和和A/D的实时控制系统的实时控制系统控控制制对对象象计计算算机机传感器传感器放大放大滤波滤波多多路路开开关关MUX采采样样保保持持器器A/D转转换换I/O接接口口执执行行部部件件多多路路开开关关MUXD/A转转换换I/O接接口口传感器传感器放大放大滤波滤波电气学院学习部资料库3二二.多路模拟开关多路模拟开关 输入:输入:I/O07 输出输出:O/I
2、通道选择:通道选择:A2A0 三三.采样、量化和编码采样、量化和编码1.采样采样 图图11-6,11-7采样定理采样定理 fs2fmVOUTVIN模拟模拟开关开关VOUT模拟模拟开关开关采样保持电气学院学习部资料库42.量化量化 图图11-5把采样所得信号变成数字把采样所得信号变成数字设输入电压为设输入电压为07V,3位位A/D转换器转换器由表中可看出,量化过程会产生由表中可看出,量化过程会产生1/2LSB(即(即0.5V)的误差)的误差 对对8位位A/D,量程,量程05V:量化单位(即每一分层所包含的最大电压和最小电压之差)量化单位(即每一分层所包含的最大电压和最小电压之差)q=电压量程范围
3、电压量程范围/2n=5.0V/2560.019V=19mV 1 LSB LSB数字量最低位数字量最低位 3.编码编码 数字量可用不同的代码来表示数字量可用不同的代码来表示a)自然二进制编码自然二进制编码b)双极性二进制编码双极性二进制编码 实际电平实际电平 00.5V0.51.5V1.52.5V.6.57.5V量化值量化值0127编码编码000001010111电气学院学习部资料库511-2 D/A转换器转换器一、数一、数/模模 转换器原理转换器原理 数字量数字量 模拟量(电流、电压)模拟量(电流、电压)图图11-8 11-8 SiSi电子模拟开关电子模拟开关 di=1di=1sisi闭合闭合
4、 di=0di=0sisi断开断开 则则R-R-片内权电阻片内权电阻IOVO 理想运放理想运放 VO=IORf,Rf=R/2 最高位为最高位为dn-1,则,则 VO=VR/2n(dn-12n-1 dn-22n-2 dn-32n-3 d020)=VR/2n D D为数字量为数字量电气学院学习部资料库6二、二、D/AD/A转换器的性能指标转换器的性能指标1.1.分辨率分辨率 最大输出量和数字量的位数的比率称为分辨率最大输出量和数字量的位数的比率称为分辨率=FSR/2=FSR/2n n 位数最多,分辨率越高位数最多,分辨率越高2.2.精度精度 绝对精度绝对精度=输出实际值输出实际值-理想值理想值 相
5、对精度相对精度=绝对精度绝对精度/最大量程最大量程3.3.建立时间:建立时间:输入到输出稳定的时间输入到输出稳定的时间 超高速的超高速的D/AD/A转换器:转换器:ts100nsts100ns高速高速D/AD/A转换器:转换器:ts=10sts=10s1s1s4.4.输入数字量输入数字量 一般为自然二进制码一般为自然二进制码5.5.输出模拟量输出模拟量 多数为电流输出型,多数为电流输出型,Rf在片内,有专门引脚在片内,有专门引脚电气学院学习部资料库7三、三、DAC0832DAC0832芯片芯片内部带有数据输入寄存器的内部带有数据输入寄存器的8 8位位D/AD/A芯片芯片1 1、内部结构和引脚功
6、能:图、内部结构和引脚功能:图11-13 11-13 DAC0832DAC0832包括两级寄存器,包括两级寄存器,1 1个个D/AD/A转换器转换器 两个寄存器可以分别选通。两个寄存器可以分别选通。8 8位输入寄存器位输入寄存器 8 8路输入,路输入,8 8路输出路输出 输入:输入:DI7DI7DI0DI0,接,接CPUCPU数据总线数据总线 输出:输出:8 8位位DACDAC寄存器的输入寄存器的输入ILE CS WR1 LE1(锁锁存使能端)存使能端)1 01 0 1 1 1 1 1 10 输输入、入、锁锁存存 直通直通 0 0 锁锁存存电气学院学习部资料库88 8位位DACDAC寄存器寄存
7、器 8 8路输入,路输入,8 8路输出路输出 输入:输入:8 8位输入寄存器的输出位输入寄存器的输出 输出:输出:8 8位位D/AD/A转换器转换器8 8位位D/AD/A转换器转换器 8 8路输入,路输入,2 2路输出路输出 输入:输入:8 8位位DACDAC寄存器的输出寄存器的输出输出:输出:I IOUT1OUT1 互补电流输出互补电流输出 I IOUT2 OUT2 加上加上I/VI/V转换电路,则输出电压信号转换电路,则输出电压信号 WR2 XFER LE2 0 0 1 1 1 直通直通 0 0 锁锁存存电气学院学习部资料库9VREF-参考电压输入,转换的基准参考电压输入,转换的基准 Rf
8、b -片内反馈电阻,与运放配合构成片内反馈电阻,与运放配合构成I/V转换器转换器 VCC 工作电压输入端工作电压输入端 DGND 数字地数字地 AGND 模拟地模拟地(所有模拟地相连,所有数字地相连,提高抗干扰)(所有模拟地相连,所有数字地相连,提高抗干扰)2、工作方式(、工作方式(3种)种)ILE 接高电平接高电平 直通方式:直通方式:全部直通全部直通 CS,WR1、WR2、XFER均接地均接地.单缓冲方式单缓冲方式 任一个缓冲器直通任一个缓冲器直通 CS,WR1并联,接译码器输出(地址!),并联,接译码器输出(地址!),WR2,XFER并联接地。并联接地。当执行一条当执行一条OUTOUT指
9、令,选中该端口,使指令,选中该端口,使IOWIOW有效,有效,CS,WR1有有效,启动效,启动D/AD/A转换转换电气学院学习部资料库10双缓冲方式双缓冲方式作用:作用:可以在输出的同时,采集下一个数据,提高转换速度可以在输出的同时,采集下一个数据,提高转换速度例例1 1:图:图11-1511-15,DAC0832DAC0832双缓冲方式双缓冲方式 硬件连接图硬件连接图 软件:软件:MOV DX MOV DX,320H 320H ;输入数据,;输入数据,DATADATA为被转换的为被转换的MOV AL MOV AL,DATA DATA ;数据;数据 OUT DX OUT DX,ALAL MOV
10、 DX MOV DX,321H 321H ;转换;转换 OUT DX OUT DX,ALALILEWR1 WR2 CS XFER 1IOW IOWYi Yi+1电气学院学习部资料库11用于需用于需同时同时输出多个参数的模拟量系统中,每一种参数用输出多个参数的模拟量系统中,每一种参数用一片一片DAC0832,用,用CS和和XFER分别控制两个缓冲器分别控制两个缓冲器例例2:图:图11-16 各片的各片的CS各接一个译码器输出,各片的各接一个译码器输出,各片的XFER并联,接一并联,接一个译码器输出,译码器用了个译码器输出,译码器用了3个片选端个片选端 程序段:程序段:设设CS1的地址为的地址为3
11、0H,CS2的地址为的地址为31H,XFER的地址为的地址为32H MOV AL,DATA1;送第一个数送第一个数 OUT 30H,AL MOV AL,DATA2;送第二个数送第二个数 OUT 31H,AL OUT 32H,AL ;同时转换,输出;同时转换,输出 电气学院学习部资料库12VOUT1 DAC1 VREF ILECS RFBXFER IOUT1WR1 IOUT2WR2译译码码器器 DAC2 VREF ILECS RFBXFER IOUT1WR1 IOUT2WR2+5VVOUT2WRCS1CS2CS3电气学院学习部资料库13例例3 3:通过:通过DAC0832DAC0832产生一个周
12、期为产生一个周期为T T的正向锯齿波的正向锯齿波 8 8位位D/A D/A:2 28 8=256=256,每个数据信号的维持时间为每个数据信号的维持时间为T/256T/256(若要产生三角波,则每位维持时间(若要产生三角波,则每位维持时间T/512T/512)硬件连接图:单缓冲方式硬件连接图:单缓冲方式图图11-11FFH00H电气学院学习部资料库14DAC0832VccRFBI IORT1I IORT2AGNDXFERXFER WR2WR2D DGNDCSCSWRWR1DIDI7DIDI0ILEILEV VREFREF译码器-+5V+5VU U0 0地址总线地址总线M/IOIOWIOWDI7
13、DI0+5V电气学院学习部资料库15 主:主:MOV DX MOV DX,PORT PORT ;设;设PORTPORT为为DAC0832DAC0832的口地址的口地址 MOV AL MOV AL,0FFH0FFHROTATEROTATE:INC ALINC AL OUT DX OUT DX,AL AL ;往;往DAC0832DAC0832输出数据输出数据 CALL DELAY CALL DELAY ;调用延时子程序;调用延时子程序 JMP ROTATEJMP ROTATE子:子:DELAYDELAY:MOV CX MOV CX,DATA DATA ;延时程序,往;延时程序,往CXCX中送延时常
14、数中送延时常数DELAY1DELAY1:LOOP DELAY1 LOOP DELAY1 RET RET如果要产生三角波,梯形波?如果要产生三角波,梯形波?电气学院学习部资料库1611-3 A/D 11-3 A/D 转换器转换器一一.模数转换器原理模数转换器原理1.逐次逼近法原理逐次逼近法原理 转换速度快,分辨率高转换速度快,分辨率高 逐次逼近寄存器逐次逼近寄存器SAR 表表11-5SAR缓冲器缓冲器D/ACLKAViVR输出数据输出数据+-电气学院学习部资料库172.双斜积分法原理双斜积分法原理 抗干扰能力强,转换速度较慢抗干扰能力强,转换速度较慢 固定时间积分,斜率正比于固定时间积分,斜率正
15、比于Vi,然后以同一斜率反向积分,然后以同一斜率反向积分,用高频脉冲测定反向积分所花费的时间用高频脉冲测定反向积分所花费的时间固定时固定时间积分间积分积分输出积分输出固定斜率固定斜率tT1T2T1,T2 Vi电气学院学习部资料库18二、二、A/DA/D转换器:转换器:ADC0809ADC08091 1、ADC0809ADC0809:8 8通道通道8 8位,逐次逼近方式位,逐次逼近方式2 2、ADC0809ADC0809内部框图内部框图8路转换模式拟开关锁存与译码器A/D输出三态缓冲器 D88 IN0IN1IN6IN7CBAALEVCCGNDVREF(+)VREF(-)OED7D0STARTCL
16、KEOCA电气学院学习部资料库19IN0IN0IN7IN7:8 8路模拟量输入,每一路通道都对应着路模拟量输入,每一路通道都对应着8 8位输出位输出C C、B B、A A:通道选择:通道选择ALEALE:通道锁存允许:通道锁存允许 H H START START:启动转换:启动转换 H H CLK CLK:采样时钟频率:采样时钟频率 EOCEOC:转换结束:转换结束:未开始(未开始(H H)转换(转换(L L)结束(结束(H H)VREFVREF(+)、)、VREFVREF():参考电压输入):参考电压输入 VREFVREF()接模拟地)接模拟地 VREFVREF(+)=5V=5V,量程:,量
17、程:0 05V5V OE OE:输出允许:输出允许 H H 当当OE=HOE=H,将输出三态缓冲器内容输出,将输出三态缓冲器内容输出 D7D7D0D0:8 8位输出位输出 VCCVCC:工作电压:工作电压 +5V +5V GND GND:模拟地:模拟地C B AIN00 0 0IN10 0 1 IN71 1 1电气学院学习部资料库203、工作过程、工作过程 选选通道号(通道号(C B A)使使ALE、START=H转换开转换开始,始,EOC变低变低硬件完成转换结束,硬件完成转换结束,EOC变高变高使使OE=H,输出,输出4、ADC0809与与CPU连接连接直接与直接与CPU连接:由于有输出三态
18、缓冲器,所以连接:由于有输出三态缓冲器,所以可以直接与可以直接与CPU相连接相连接例:例:ADC0809电路如图电路如图11-22,8个通道的地址为个通道的地址为300H 307H,转换结束时,转换结束时EOC变高,用一个三变高,用一个三态门接到数据线的态门接到数据线的D7,若结束,用一,若结束,用一IN指令使指令使OE为高,转换后的数据由数据线读出,设读通道为高,转换后的数据由数据线读出,设读通道0的的转换数据。转换数据。电气学院学习部资料库21A9A3VREF(+)VCCOEALE CLKSTARTIN0 EOC.IN6 D7D0IN7 VREF(-)CB GNDA译译码码器器IORIOW
19、11300H307H308H30FH8路路模模拟拟信信号号D7308H500KHz+5V500KHzA2 A1A0 电气学院学习部资料库22 MOV DX,300H ;由由OUT指令选择通道指令选择通道0,并,并 OUT DX,AL ;使;使IOW为为0,启动转换,启动转换,POLL:MOV DX,308H ;转换开始了吗?;转换开始了吗?EOC=0?IN AL,DX ;若不是,等待;若不是,等待 TEST AL,80H JNZ POLLNO-END:IN AL,DX ;转换结束了吗?;转换结束了吗?EOC=1?TEST AL,80H ;若不是,等待;若不是,等待 JZ NO-END MOV
20、DX,300H ;IN指令使指令使IOR为为0,由片选,由片选 IN AL,DX ;信号共同使;信号共同使OE为高,打开为高,打开 输出缓冲器,读入转换后数据输出缓冲器,读入转换后数据若若8个通道循环检测?若个通道循环检测?若EOC接接D5?电气学院学习部资料库23通过并行接口芯片通过并行接口芯片 8255A8255A例:编程一程序进行多通道数据采集,将结果存入例:编程一程序进行多通道数据采集,将结果存入附加段中以附加段中以DATA-BUFDATA-BUF为起始的数据缓冲区中,已知为起始的数据缓冲区中,已知8255A8255A端口地址:端口地址:320H320H326H326H(在一个时刻只能
21、对一个通道进行采集、通过轮流(在一个时刻只能对一个通道进行采集、通过轮流交替实行多通道数据采集)交替实行多通道数据采集)8255A8255A:工作方式:工作方式0 A0 A口输入口输入 C C口口 低低4 4:输出:输出 高高4 4:输入:输入 D7 D6 D5 D4 D3 D2 D1 D0D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 1 1 1 0 0 1 1 0 0电气学院学习部资料库24D0D0D7D7WRWRRDRDA A0 0A A1 1CSCSPAPA7 7.PAPA0 0PCPC7 7PCPC3 3PCPC2 2PCPC1 1PCPC0 0D7D7D0D0OEOEE
22、OCEOCSTARTSTARTALEALEC CB BA AIN7IN7IN0IN0VccVccVREF(+)VREF(-)GNDCLKCLK译译码码器器 ADC0809ADC08098255A8255ADBDBA A1 1A A2 2ABABYiYi外部时钟外部时钟IOWIOWIDRIDR1233电气学院学习部资料库258255初始化初始化选通道号选通道号启动转换启动转换ALE STAR 复位复位读数据读数据N N设定采集通道数设定采集通道数启动开始否启动开始否?转换结束转换结束?采集完采集完?YN NYN NY电气学院学习部资料库26采集子程序:采集子程序:AD-SUB PROC NEAR
23、MOV DX,326H MOV AL,10011000B OUT DX,AL ;初始化;初始化8255AMOV CX,8 ;设定采集通道数;设定采集通道数CLDMOV BL,00H ;初始通道号;初始通道号LEA DI,DATA-BUF NEXT-IN:MOV DX,324HMOV AL,BLOUT DX,AL ;送通道号;送通道号MOV DX,326H MOV AL,0000 0111B;PC3置置1,启动转换,启动转换电气学院学习部资料库27 OUT DX,AL NOP NOP MOV AL,0000 0110B ;PC3置置0,ALE,OUT DX,AL ;START 复位复位 MOV
24、DX,324HNO-CONV:IN AL,DX TEST AL,80H JNZ NO-CONV ;查;查PC7,转换开始?,转换开始?NO-EOC:IN AL,DX TEST AL,80H JZ NO-EOC ;再查;再查PC7,转换结束否?,转换结束否?MOV DX,320H IN AL,DX ;从;从PA口读入数据口读入数据 STOSB ;存入缓冲区;存入缓冲区 INC BL;置下一通道号;置下一通道号 LOOP NEXT-IN 电气学院学习部资料库28谢谢大家!谢谢大家!RETADSUB ENDP作业:作业:11-3,6电气学院学习部资料库29 模拟信号 v、mv电压、电流 干净的几V电
25、压、电流 信号预处理 可转换的模拟信号 数字信号一、采样、量化、编码一、采样、量化、编码1、采样:按相等的时间间隔t从模拟信号上截取一个个离散的瞬时值 采样率fs=1/t (fs越高,单位时间内采得的信号越多,越接近原信号)图 以电压为例采样 3.7 5.3 6.3 6.4 5.1 3.2 1.8 1.2量化 3 5 6 6 5 3 1 1编码 011 101 110 110 101 011 001 001电气学院学习部资料库302、量化:将满量程(FSR)电压值(由参考电压VR设定的)分为2n等分,然后将采样所得的模拟量与这些分层进行比较,落在哪个分层内,便量化为相应的数字量 量化单位q:每个分层所包含的最大值和最小值之差2n n=3 实际N位ADC N=8、10、12、16 2n3、编码:将量化所得的数字量用不同的代码来表示 自然二进制码 小数N N=di=0或1 最高有效位MSB 最低有效痊LSB电气学院学习部资料库