《第11章-模拟接口技术黄云峰.ppt》由会员分享,可在线阅读,更多相关《第11章-模拟接口技术黄云峰.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1主要内容主要内容n模拟量的输入模拟量的输入/输出输出n数数/模(模(D/A)转换器)转换器n模模/数(数(A/D)转换器)转换器211.111.1模拟量的输入模拟量的输入/输出输出3模拟量模拟量I/O通道:通道:模拟接口电路的任务模拟接口电路的任务模拟电路的任务模拟电路的任务0010110110101100工工业业生生产产过过程程传传感感器器放大放大滤波滤波多路转换多路转换&采样保持采样保持A/D转换转换放大放大驱动驱动D/A转换转换输出输出接口接口微微型型计计算算机机执行执行机构机构输入输入接口接口物理量物理量变换变换信号信号处理处理信号信号变换变换I/O接口接口输入通道输入通道输出通道输
2、出通道变变送送器器4模拟量的输入通道模拟量的输入通道n传感器(传感器(Transducer)非电量非电量电压、电流电压、电流 n变送器(变送器(Transformer)转换成标准的电信号转换成标准的电信号n信号处理(信号处理(Signal Processing)放大、整形、滤波放大、整形、滤波 5模拟量的输入通道模拟量的输入通道n多路转换开关(多路转换开关(Multiplexer)多选一多选一n采样保持电路(采样保持电路(Sample Holder,S/H)保证变换时信号恒定不变保证变换时信号恒定不变nA/D变换器(变换器(A/D Converter)模拟量转换为数字量模拟量转换为数字量6模拟
3、量的输出通道模拟量的输出通道nD/A变换器(变换器(D/A Converter)数字量转换为模拟量数字量转换为模拟量n低通滤波低通滤波 平滑输出波形平滑输出波形n放大驱动放大驱动 提供足够的驱动电压,电流提供足够的驱动电压,电流711.2 11.2 数数/模(模(D/A)变换器)变换器8掌握:掌握:nD/A变换器的工作原理变换器的工作原理nD/A变换器的主要技术指标变换器的主要技术指标nDAC0832的三种工作模式的三种工作模式nDAC0832的应用的应用一、一、D/A变换器的工作原理变换器的工作原理nD/A转换器的作用是将数字量转换为相应的模拟转换器的作用是将数字量转换为相应的模拟量。数字量
4、由二进制位组成,每个二进制位的权量。数字量由二进制位组成,每个二进制位的权为为2i,要把数字量转换为相应的模拟量电压(多,要把数字量转换为相应的模拟量电压(多数情况需要转换后的模拟信号以电压的形式输出)数情况需要转换后的模拟信号以电压的形式输出),需要先把数字量的每一位上的代码按权转换成,需要先把数字量的每一位上的代码按权转换成对应的模拟电流,再把模拟电流相加,最后由运对应的模拟电流,再把模拟电流相加,最后由运算放大器将其转变成模拟电压。将数字量转换成算放大器将其转变成模拟电压。将数字量转换成对应模拟电流的工作由对应模拟电流的工作由D/A转换器来完成。转换器来完成。910一、一、D/A变换器的
5、工作原理变换器的工作原理 模拟开关模拟开关 电阻网络电阻网络 运算放大器运算放大器VrefRf 模拟开关模拟开关电阻网络电阻网络VO数字量数字量11基本变换原理基本变换原理n运放的放大倍数足够大时,输出电压运放的放大倍数足够大时,输出电压VO与输入与输入 电压电压Vin的关系为:的关系为:VinRf VOR 12基本变换原理基本变换原理n若输入端有若输入端有n个支路个支路,则输出电压则输出电压VO与输入电与输入电压压Vi的关系为:的关系为:VinRf VOR1Rn13权电阻网络权电阻网络2R4R8R16R32R64R128R256RVrefRf VOS1S2S3S4S5S6S7S8这里,上式中
6、的这里,上式中的n=814基本变换原理基本变换原理n如果每个支路由一个开关如果每个支路由一个开关Si控制,控制,Si=1表示表示Si合上,合上,Si=0表示表示Si断开,则上式断开,则上式变换为变换为若若Si=1,该项对该项对VO有贡献;有贡献;若若Si=0,该项对该项对VO无贡献无贡献15基本变换原理基本变换原理n如果用如果用8位二进制代码来控制图中的位二进制代码来控制图中的S1S8(Di=1时时Si闭合;闭合;Di=0时时Si断开断开),则不同的,则不同的二进制代码就对应不同输出电压二进制代码就对应不同输出电压VO;n当代码在当代码在0FFH之间变化时,之间变化时,VO相应地在相应地在 0
7、(255/256)Vref之间变化;之间变化;n为控制电阻网络各支路电阻值的精度,实际的为控制电阻网络各支路电阻值的精度,实际的D/A转换器采用转换器采用R-2R梯形电阻网络,它只用两梯形电阻网络,它只用两种阻值的电阻种阻值的电阻(R和和2R)。基本变换公式基本变换公式nVA=DVR (11-1)nD=a12-1+a22-2+an2-n=(11-2)nVA=DVR=+=VR (11-3)nD=an-12n-1+an-22n-2+a121+a020=(11-4)nVA=(an-12n-1+an-22n-2+a121+a020)=(11-5)1617实际的实际的D/A转换器转换器 R-2R梯形电阻
8、网络梯形电阻网络梯型电阻网络的公式梯型电阻网络的公式1819二、主要技术指标二、主要技术指标n分辨率(分辨率(Resolution)n输入的二进制数每输入的二进制数每1个最低有效位个最低有效位(LSB)使输出使输出变化的程度。变化的程度。n表示:表示:n可用输入数字量的位数来表示,如可用输入数字量的位数来表示,如8位、位、10位等;位等;n也可用一个也可用一个LSB(Least Significant BitLeast Significant Bit)使输出变使输出变化的程度来表示。化的程度来表示。20分辩率例分辩率例n一个满量程为一个满量程为5V的的10位位D/A变换器,变换器,1 LSB的
9、的变化将使输出变化:变化将使输出变化:5/(210-1)=5/1023 =0.04888V =48.88mV21转换精度(误差)转换精度(误差)实际输出值与理论值之间的最大偏差实际输出值与理论值之间的最大偏差n影响转换精度的因素:影响转换精度的因素:分辩率分辩率 电源波动电源波动 温度变化温度变化 22转换时间转换时间n从开始转换到与满量程值相差从开始转换到与满量程值相差1/2 LSB1/2 LSB所对所对应的模拟量所需要的时间应的模拟量所需要的时间tV1/2 LSBtCVFULL23三、典型的三、典型的D/A转换器转换器DAC0832特点:特点:n8位电流输出型位电流输出型D/A转换器转换器
10、nT型电阻网络型电阻网络n差动输出差动输出24DAC0832的内部结构的内部结构25主要引脚功能主要引脚功能输入寄存器控制信号:输入寄存器控制信号:nD7D0:输入数据线:输入数据线nILE:输入锁存允许:输入锁存允许nCS:片选信号:片选信号nWR1:写输入锁存器:写输入锁存器26主要引脚功能主要引脚功能用于用于DAC寄存器的控制信号:寄存器的控制信号:nWR2:写:写DAC寄存器寄存器nXFER:允许输入锁存器的数据传送到:允许输入锁存器的数据传送到DAC寄寄存器存器27主要引脚功能主要引脚功能其它引线:其它引线:nVREF:参考电压。:参考电压。-10V+10V,一般为,一般为+5V或或
11、+10VnIOUT1、IOUT2:D/A转换差动电流输出。转换差动电流输出。用于连接运算放大器的输入用于连接运算放大器的输入nRfb:内部反馈电阻引脚,接运放输出:内部反馈电阻引脚,接运放输出nAGND、DGND:模拟地和数字地:模拟地和数字地 28工作模式工作模式单缓冲模式单缓冲模式双缓冲模式双缓冲模式无缓冲模式无缓冲模式29单缓冲模式单缓冲模式n使输入锁存器或使输入锁存器或DAC寄存器二者之一处于直通,寄存器二者之一处于直通,即芯片只占用一个端口地址。即芯片只占用一个端口地址。nCPU只需一次写入即开始转换。写入数据的程只需一次写入即开始转换。写入数据的程序为:序为:MOV DX,PORT
12、 MOV AL,DATA OUT DX,AL与系统的连接与系统的连接见教材见教材p332图图30双缓冲模式(标准模式)双缓冲模式(标准模式)n对输入寄存器和对输入寄存器和DAC寄存器均需控制。寄存器均需控制。n当输入寄存器控制信号有效时,数据写入输入当输入寄存器控制信号有效时,数据写入输入 寄存器中;再在寄存器中;再在DAC寄存器控制信号有效时,寄存器控制信号有效时,数据才写入数据才写入DAC寄存器,并启动变换。寄存器,并启动变换。n此时芯片占用两个端口地址。此时芯片占用两个端口地址。n优点:优点:n数据接收与数据接收与D/A转换可异步进行;转换可异步进行;n可实现多个可实现多个DAC同步转换
13、输出同步转换输出n分时写入、同步转换分时写入、同步转换31工作时序工作时序写输入写输入寄存器寄存器写写DAC寄存器寄存器32双缓冲模式同步转换例双缓冲模式同步转换例译码器译码器A10-A00832-10832-2port1port2port333MOV AL,data MOV DX,port1OUT DX,ALMOV DX,port2OUT DX,AL MOV DX,port3OUT DX,AL HLT双缓冲模式的数据写入程序双缓冲模式的数据写入程序0832-1的输入寄存器地址的输入寄存器地址0832-2的输入寄存器地址的输入寄存器地址DAC寄存器地址寄存器地址34无缓冲器模式无缓冲器模式n使
14、内部的两个寄存器都处于直通状态。模拟输使内部的两个寄存器都处于直通状态。模拟输出始终跟随输入变化。出始终跟随输入变化。n不能直接与数据总线连接,需外加并行接口不能直接与数据总线连接,需外加并行接口(如如74LS373、8255等等)。35四、四、D/A转换器的应用转换器的应用 信号发生器信号发生器 用于闭环控制系统用于闭环控制系统向向D/A转换器写入某种按规转换器写入某种按规律变化的数据,即可在输出律变化的数据,即可在输出端获得相应的各种波形端获得相应的各种波形【例例11-1】单缓冲数单缓冲数/模转换输出模转换输出nstack segment stack stackndw 32 dup(0)n
15、stack endsndata segmentnBUF DB 12,34,56,78nCOUNT EQU$-BUFndata endsncode segmentnstart proc farnassume ss:stack,cs:code,ds:datan push dsn sub ax,axn push axn mov ax,datan mov ds,axn MOV BX,OFFSET BUFn MOV CX,COUNTnAGAIN:MOV DX,380Hn MOV AL,BXn OUT DX,ALn INC BXn MOV AX,1000 ;等待;等待 DA转换结束转换结束nHERE:DE
16、C AXn JNZ HEREn LOOP AGAINn retnstart endpncode endsnend start36【例例11-2】产生锯齿波产生锯齿波nstack segment stack stackn dw 32 dup(0)nstack endsncode segmentnstart proc farn assume ss:stack,cs:coden push dsn sub ax,axn push axn MOV DX,380Hn AGAIN:MOV CX,100nINC ALn OUT DX,ALn LOOP$n PUSH AXn MOV AH,11 ;11号号DOS
17、中断调用,检查标准输入状态中断调用,检查标准输入状态n INT 21Hn CMP AL,0 ;有输入;有输入AL=FFH;若无输入;若无输入AL=0n POP AXn JE AGAIN ;无输入继续;无输入继续n retnstart endpncode endsnend start373811.3 11.3 模模/数(数(A/D)转换器)转换器39要点:要点:nA/D转换器的一般工作原理;转换器的一般工作原理;nA/D转换器的主要技术指标;转换器的主要技术指标;nA/D转换器的应用转换器的应用n与系统的连接与系统的连接n数据采集程序的编写数据采集程序的编写40A/D转换器转换器n用于将连续变化
18、的模拟信号转换为数字信号的用于将连续变化的模拟信号转换为数字信号的装置,简称装置,简称ADC,是模拟系统与计算机之间的是模拟系统与计算机之间的接口部件。接口部件。41A/D转换器类型转换器类型n计数型计数型A/D转换器转换器 -速度慢、价格低,适用于慢速系统速度慢、价格低,适用于慢速系统n双积分型双积分型A/D转换器转换器 -分辩率高、抗干扰性好、转换速度慢,适用于中速分辩率高、抗干扰性好、转换速度慢,适用于中速 系统系统n逐位反馈型逐位反馈型A/D转换器转换器 -转换精度高、速度快、抗干扰性差转换精度高、速度快、抗干扰性差42一、一、A/D转换器的工作原理转换器的工作原理n逐位反馈型逐位反馈
19、型A/D转换器转换器n类似天平称重量时的尝试法,逐步用砝码的累积重量类似天平称重量时的尝试法,逐步用砝码的累积重量去逼近被称物体去逼近被称物体43二、主要技术指标二、主要技术指标n转换精度转换精度n量化误差量化误差n非线性误差非线性误差n其它误差其它误差n总误差总误差=各误差的均方根各误差的均方根44量化间隔量化间隔n一个最低有效位对应的模拟量一个最低有效位对应的模拟量 =Vmax/(2n-1)n例:某例:某8位位ADC的满量程电压为的满量程电压为5V,则其分辨,则其分辨率为:率为:5V/255=19.6mV45量化误差量化误差n绝对量化误差绝对量化误差=1/2 n相对量化误差相对量化误差=(
20、1/2)1LSB 100%n例:例:设满量程电压设满量程电压=10V,A/D变换器位数变换器位数=10位,位,则:则:绝对量化误差绝对量化误差 10/211=4.88mV相对量化误差相对量化误差 1/211*100%=0.049%46转换时间转换时间n实现一次转换需要的时间。精度越高(字长越实现一次转换需要的时间。精度越高(字长越长),转换速度越慢。长),转换速度越慢。47输入动态范围输入动态范围n允许转换的电压的范围。允许转换的电压的范围。如如05V、010V等。等。48三、典型的三、典型的A/D转换器芯片转换器芯片ADC0809:n8通道(通道(8路)输入路)输入n8位字长位字长 n逐位逼
21、近型逐位逼近型n转换时间转换时间100s n内置三态输出缓冲器内置三态输出缓冲器49主要引脚功能主要引脚功能nD7D0:输出数据线(三态):输出数据线(三态)nIN0IN7:8通道(路)模拟输入通道(路)模拟输入nADDA、ADDB、ADDC:通道地址:通道地址nALE:通道地址锁存:通道地址锁存nSTART:启动转换:启动转换nEOC:转换结束状态输出:转换结束状态输出nOE:输出允许(打开输出三态门):输出允许(打开输出三态门)nCLK:时钟输入(:时钟输入(10KHz1.2MHz)50内部结构内部结构IN7IN08个个模模拟拟输输入入通通道道START EOC CLK OED7D0VRE
22、F(+)VREF(-)ADDCADDBADDAALE比较器比较器8路模路模拟开拟开关关逐位逼近寄存器逐位逼近寄存器SAR树状开关树状开关电阻网络电阻网络三态三态输出输出锁存锁存器器时序与控制时序与控制地址地址锁存锁存及及译码译码D/A8选选151工作时序工作时序52ADC0809的工作过程的工作过程由时序图知由时序图知ADC0809的工作过程如下:的工作过程如下:n送通道地址,以选择要转换的模拟输入;送通道地址,以选择要转换的模拟输入;n锁存通道地址到内部地址锁存器;锁存通道地址到内部地址锁存器;n启动启动A/D变换;变换;n判断转换是否结束;判断转换是否结束;n读转换结果读转换结果53ADC
23、0809的应用的应用n芯片与系统的连接芯片与系统的连接n编写相应的数据采集程序编写相应的数据采集程序54芯片与系统的连接芯片与系统的连接模拟输入端模拟输入端Ini:n单路输入单路输入n多路输入多路输入多路输入时多路输入时ADDCADDBADDAIN0IN1IN2IN3IN4ADC0809输入输入0输入输入1输入输入2输入输入3输入输入4CPU指定指定通道号通道号单路输入时单路输入时ADDCADDBADDAIN4ADC0809输入输入+5V55通道地址线通道地址线ADDA-ADDC的连接的连接n多路输入时,地址线不能接死,要通过一个接口芯片与数据总线多路输入时,地址线不能接死,要通过一个接口芯片
24、与数据总线连接。连接。接口芯片可以选用:接口芯片可以选用:简单接口芯片简单接口芯片74LS273,74LS373等(占用一个等(占用一个I/O地址)地址)可编程并行接口可编程并行接口8255(占用四个(占用四个I/O地址)地址)ADDCADDBADDAIN0IN1IN2IN3IN4ADC0809输输入入DB74LS273Q2Q1Q0CP来自来自I/O译码译码D0-D7ADDCADDBADDAIN0IN1IN2IN3IN4ADC0809DB8255PB2PB1PB0CS#来自来自I/O译码译码D0-D7A1A0A1A056数据输出线数据输出线D0-D7的连接的连接n可直接连到可直接连到DB上,或
25、通过另外一个输入接口与上,或通过另外一个输入接口与DB相相连;连;n两种方法均需占用一个两种方法均需占用一个I/O地址地址D0-D7ADC0809DBOE来自来自I/O译码译码D0-D7ADC0809DBOE来自来自I/O译码译码直接连直接连DB通过输入接口连通过输入接口连DB74LS244+5VDIDOE1#E2#57ALE和和START端的连接端的连接n独立连接:独立连接:用两个信号分别进行控制用两个信号分别进行控制需占用两个需占用两个I/O端口或两个端口或两个I/O线;线;n统一连接:统一连接:用一个脉冲信号的上升沿进行地址锁存,下降沿实现启动用一个脉冲信号的上升沿进行地址锁存,下降沿实
26、现启动转换转换只需占用一个只需占用一个I/O端口或一个端口或一个I/O线。线。ADC0809ALESTART独立连接独立连接来自来自I/O译码译码1来自来自I/O译码译码2ADC0809ALESTART统一连接统一连接来自来自I/O译码译码58ADC0809与系统的连接例与系统的连接例D0IN0A15-A0 IOR IOWD7-D0D7-D0EOCOESTARTALEADDCADDBADDA译译码码器器ADC0809I/O接接口口59判断转换结束的方法判断转换结束的方法n软件延时等待软件延时等待(比如延时(比如延时1ms)n此时不用此时不用EOC信号,信号,CPU效率最低效率最低n软件查询软件
27、查询EOC状态。状态。n把把EOC作为中断申请信号作为中断申请信号,接到,接到8259的的IN端。端。n在中断服务程序中读入转换结果,效率较高在中断服务程序中读入转换结果,效率较高60数据采集程序流程数据采集程序流程 初始化初始化 送通道地址送通道地址送送ALE信号信号送送START信号信号读读EOC状态状态送读允许送读允许OE信号信号EOC=1?读转换结果读转换结果采集结束否?采集结束否?NY结结 束束Y送下一路通道地址送下一路通道地址(1)(1)N【例例11-3】ADC数据采集数据采集nINIT_8255 PROC NEAR ;8255初始化初始化n MOV DX.037BHn MOV A
28、L,91H ;AB,C均为方式均为方式0,A输入,输入,B输出,输出,CL输入输入n OUT DX,ALn RETnINIT_8255 ENDPnADC0809数据采集程序如下:数据采集程序如下:nSTART:MOV AX,SEG DATAn MOV DS,AXn MOV SI,OFFSET DATAn CALL INIT_8255 ;初始化;初始化8255n MOV BL,0 ;通道号,初始指向第;通道号,初始指向第0路路n MOV CX,8 ;共采集;共采集8次,每路采集一次次,每路采集一次nAGAIN:MOV AL,BLn MOV DX,0379H ;PB赋值赋值n OUT DX,AL
29、;送通道地址;送通道地址n OR AL,10Hn OUT DX,AL ;送;送ALE信号(上升沿)信号(上升沿)n AND AL,0EFH n OUT DX,AL ;输出;输出START信号(下降沿)信号(下降沿)n NOP ;空操作等待转换;空操作等待转换n MOV DX,037AH ;PCnWAIT1:IN AL,DX ;读;读EOC状态状态n AND AL,02H n JZ WAIT1 ;若;若EOC为低电平则等待为低电平则等待n MOV DX,0379Hn MOV AL,BLn OR AL,20Hn OUT DX,AL ;EOC端为高电平则输出读允许信号端为高电平则输出读允许信号OE=1n MOV DX,0378Hn IN AL,DX ;读入变换结果;读入变换结果n MOV SI,AL ;将转换的数字量送存储器;将转换的数字量送存储器n INC SI nINC BL ;修改通道地址值;修改通道地址值n LOOP AGAIN ;若未采集完则再采集下一路数据;若未采集完则再采集下一路数据nMOV DX,0379HnMOV AL,0nOUT DX,ALnHLT61
限制150内