1、第三章 过程通道和数据采集系统之五 内容提要?概述?模拟量输入通道:采样,多路转换器?D/A与A/D转换技术?A/D转换器及其与微处理器的接口?数据采集系统?D/A转换器及其与微处理器的接口?过程通道的抗干扰措施?小结 模拟量输出通道?任务:把微型计算机输出的数字量转换成模拟量?核心部件:D/A转换器?要求:可靠性高,满足一定的精度 具有保持功能 模拟量输出通道(2)?多路模拟量输出通道的结构形式 主要取决于输出保持器的构成方式 输出保持器的作用:在新的控制信号到来之前,使本次控制信号维持不变 两种基本结构形式:一个通路设置一个D/A转换器 多个通路共用一个D/A转换器?模拟量输出通道(3/)
2、一个通路设置一个D/A转换器 优点:转换速度快,工作可靠 缺点:使用较多的D/A转换器 模拟量输出通道(4)多个通路共用一个D/A转换器 优点:节省了D/A转换器 缺点:微机分时工作,工作可靠性差 D/A转换器及其与微处理器的接口?8位D/A转换器DAC0832?12位D/A转换器DAC1208?PCI-1720 DAC0832与微处理器接口(6)内部结构?片内设置了两个独立的8位寄存器和一个 8位D/A转换器。这两个 独立的寄存器称为:数据输入寄存器和DAC寄存器。?当CPU发出片选信号和写信号/WR1控制0832的和引脚时,从而使数据线DI0DI7上的数据送入输入寄存器,当 CPU发出控制
3、信号和时,把输入寄存器中数据传送给 DAC寄存器,并随即由D/A转换器进行转换,变成模拟(电流)信号输出,再由运算放大器变成电压信号。8位D/A转换器DAC0832(7)引脚结构:20引脚,双列直插式封装 数字量输入线D7D0(8条)控制线(5条)输 出 线(3 条)Iout1,Iout2,Rf 电源线(4条)CSWR1AGNDD7D6D0D1D2D3D4D5VREFRfDGNDVccILEWR2XFERIout2Iout1DAC083211098765432201415161718191312118位D/A转换器DAC0832(8/)引脚功能说明:输入信号D7D0 输出信号IOUT1,且IO
4、UT1 IOUT2为常量,Rfb为反馈信号输入端,反馈电阻在片内 控制信号:为允许输入锁存信号,和 分别为输入寄存器和DAC寄存器的写信号,为传送控制信号,为片选信号 电源信号:VCC为主电源,VREF为基准电压,AGND和DGND分别为模拟地和数字地 1WR2WRLEIXFERCS DI7DI0:转换数据输入。?CS:片选信号(输入),低电平有效。?ILE:数据锁存允许信号(输入),高电平有效。?/WR1:第1写信号(输入),低电平有效。?上述两个信号控制输入寄存器是数据直通方式还是数据锁存方式,当ILE=1和/WR1=0时,为输入寄存器直通方式;当ILE=1和/WR1=1时,为输入寄存器锁
5、存方式。?/WR2:第2写信号(输入),低电 平有效。?/XFER:数据传送控制信号(输入),低电平有效。?上述两个信号控制DAC寄存器是数据直通方式还是数据锁存方式,当/WR2=0和/XFER=0时,为DAC寄存器直通方式;当/WR2=1和/XFER=0时,为DAC寄存器锁存方式。?Iout1:电流输出1。?Iout2:电流输出2。?DAC转换器的特性之一是:Iout1+Iout2=常数。?Rfb:反馈电阻端。?DAC 0832是电流输出,为了取得电压输出,需在电压输出端接运算放大器,Rfb即为运算放大器的反馈电阻端。运算放大器的接法如图 7.31所示。?Vref:基准电压,其电压可正可负,
6、范围是-10 V+10 V。?DGND:数字地。?AGND:模拟地。DAC0832与微处理器接口(8+/)?DAC0832是采用CMOS工艺制成的单片直流输出型8位数/模转换器。如图所示,它由倒T型R-2R电阻网络、模拟开关、运算放大器和参考电压VREF四大部分组成。运算放大器输出的模拟量V0为:?由上式可见,输出的模拟量 与输入的数字量(D)成正比,这就实现了从数字量到模拟量的转换。8位D/A转换器DAC0832(5)?8位D/A转换器DAC0832:电流输出型 主要特点:可与各种微处理器直接接口 输入为8位二进制码,所有引脚(20个)与TTL兼容 具有双缓冲、单缓冲和直通数据输入3种工作方
7、式 电流稳定时间1 S,满量程误差为1LSB 5V15V单一电源,低功耗20 mW 参考电压为10V10V D/A转换器及与微处理器接口(5+)?D/A有两种类型?1.内部有数据寄存器,带有片选与写信号引脚;作为I/O扩展槽与微处理器连接.?2.内部无寄存器,必须外加锁存器才能与微处理器接口 8位D/A转换器DAC0832(5+)?3种工作方式?1.双缓存方式:用于同时输出多个模拟信号的多个DAC0832系统.WR1 CS先有效,控制输入数据锁存到8位输入寄存器;WR2 Xfer(传递控制有效),数据锁存入8位DAC寄存器,并同时输出多个模拟信号.?两个8位寄存器都不处于数据接受状态,CPU必
8、须送两次写信号才能完成一次 D/A转换。?2.单缓存方式:只用输入寄存器锁存数据,另一级DAC接成直通方式,即Wr2和Xfer接地,或者两个寄存器同时锁存,wr1和wr2接在一起,而把Xfer接地.?两个8位寄存器仅有一个处于数据接受状态,另一个则接受CPU送来的控制信号控制。?3.直通方式:cs,wr1,wr2,xfer 接地,ILE接+5v?两个8位寄存器处于接受状态,即输入寄存器和DAC寄存器的内容随数据输入变化而变化。数据可通过两个寄存器直接送到内部D/A转换器进行转换。DAC0832与微处理器接口(9/)因为DAC0832是电流输出型D/A转换芯片,为了取得电压输出,需在电流输出端接
9、运算放大器,Rf为运算放大器的反馈电阻端。运算放大器的接法如下图所示:-+OA.VoutRfIout1Iout2DAC0832与微处理器接口(10/)单极性输出方式-+OAVoutRfIout1Iout2.VREFDAC0832.2?,?2REFoutfboutfbnREFfbnVVR IRDVDRR?DAC0832与微处理器接口(10+/)单极性输出方式实验线路如图所示 双极性输出方式 I1I3I2OA1OA2+_2R2RRVout1VoutAVREF8031VREFRfIout1Iout2.11(2)(1)2outREFoutREFnDVVVV?DAC0832与微处理器接口(11/)双极性
10、输出方式 I1I3I2OA1OA2+_2R2RRVout1VoutAVREF8031VREFRfIout1Iout2.1231110;()2(2)(1)22outREFoutREFoutREFnIIIVVDVRVVVRR?DAC0832与微处理器接口(11+)运算放大器OA2的作用是将运算放大器OA的单向输出转变为双向输出,用图形表示如下:VVout+VREF-VREF00HFFH80HB111(1)20,0,0,0,0,0,1211,1,1,1,1,(1)22122outREFnoutREFnoutREFnREFREFnnDVVDVVDVVVLSBV?DAC0832与微处理器接口(12/)用
11、偏移二进制码方法,实现D/A转换器的双极性输出比较容易实现,而且与微型计算机输出兼容,只要把最高位取反,就可以将2的补码转换成偏移二进制码 双极性时,LSB=(2*1/2n),负极性是全1码:|Vref|+LSB DAC0832与微处理器接口(13/)注记:常用的双极性编码/1-2 数 正基准 富基准 符号-数值码 2的补码 偏移2进制码 +7+7/8-7/8 0111 0111 1111+6+6/8-6/8 0110 0110 1110+5+5/8-5/8 0101 0101 1101+4+4/8-4/8 0100 0100 1100+3+3/8-3/8 0011 0011 1011+2+2
12、/8-2/8 0010 0010 1010+1+1/8-1/8 0001 0001 1001+0+0-0 0000 0000 1000-0-0+0 1000(0000)(1000)-1-1/8+1/8 1001 1111 0111-2-2/8+2/8 1010 1110 0110-3-3/8+3/8 1011 1101 0101-4-4/8+4/8 1100 1100 0100-5-5/8+5/8 1101 1011 0011-6-6/8+6/8 1110 1010 0010-7-7/8+7/8 1111 1001 0001-8-8/8+8/8 1000 0000 在双极性接法时,如果再改变基
13、准电源的极性,就可实现完整的4个象限的乘积输出。实现正负两组基准电源的切换有如下两种接法:D/A转换器及与微处理器接口?DAC0832与MCS-51的接口 直通方式:指DAC0832内部的两个寄存器都处于不锁存状态,数据一旦到达输入端就直接被送到 D/A转换器转换成模拟量 所有控制信号都接成 有效行式,和 接地,接+5V电源 LEI1WR2WRCSXFERDAC0832与微处理器接口(15/)单缓冲方式:指DAC0832的两个寄存器中有一个处于直通方式,而另一个处于受控的锁存方式;或者两级寄存器同时锁存(图示)-+OAVout.P0P2.7WR8051D7D0DAC0832+5VVCCILEV
14、REFRfIout1Iout2AGNDDGNDCSXFERWR1WR2DAC0832与微处理器接口(16/)上述DAC0832采用的是单缓冲单极性的接线方式,它的选通地址为7FFFH 实现D/A转换的程序如下:MOV DPTR,#7FFFH;输入0832口地址 MOV A,#data;读取数据 MOVX DPTR,A ;执行D/A转换 SJMP$MOVX:片外64KB的数据存储区,与16位数据指针DPTR搭配使用 7FFFH=0111 1111 1111 1111 DAC0832与微处理器接口(17/)双缓冲方式:把DAC0832的两个寄存器都接成受控锁存方式 AO1AO2+_2R2RVout
15、.+5VILEVccVREFRfIout1Iout2WR1DI0WR2XFERCSDI7P0.0P0.7ALEEA8031WR锁存器译码器FFHFEH.DAC0832R.DAC0832与微处理器接口(18/)上述DAC0832采用的是双缓冲双极性的接线方式,输入寄存器的地址为FEH,DAC寄存器的地址为FFH 实现D/A转换的程序如下:MOV R0,#0FEH;输入寄存器地址 MOVX R0,A;转换数据送输入寄存器 INC R0 ;产生DAC寄存器地址 MOVX R0,A ;数据送入DAC寄存器并进行D/A转换 SJMP$;等待中断 DAC0832与微处理器接口(19/)D/A转换器在实际中
16、经常作为波形发生器使用,通过它可以产生各种各样的波形。它的基本原理如下:利用D/A转换器输出模拟量与输入数字量成正比这一特点,通过程序控制 CPU向D/A转换器送出随时间呈一定规律变化的数字,则D/A转换器输出端就可以输出随时间按一定规律变化的波形。单缓冲方式图 Vout -VCC ILE CS WR1 DI0DI7 WR2 XFER DGND AGND VREF Rfb IOUT1 IOUT2 +5V -5V -A+-P2.7 WR P0.0P0.7 8051 锯齿波 ORG 2000H START:MOV DPTR,#7FFFH ;选中0832 MOV A,#00H ;D/A数据初值 LP
17、:MOVX DPTR,A ;转换 INC A ;修改D/A数据 SJMP LP ;循环,输出连续模拟量 A=00 A=0FFH 三角波 ORG 2000H START:MOV DPTR,#7FFFH ;选中0832 MOV A,#00H ;D/A数据初值 UP:MOVX DPTR,A ;转换 INC A ;修改D/A数据(上升)JNZ UP ;未上升到最大值,继续 DOWN:DEC A ;否则,修改D/A数据(下降)MOVX DPTR,A ;转换 JNZ DOWN ;未下降到最小值,继续 SJMP UP ;一个周期结束,继续 A=00 A=0FFH A=00 A=0FFH A=00 A=0FF
18、H A=00 A=0FFH A=00 A=0FFH?12位D/A转换器DAC1208 4位输入寄存器8位输入寄存器12位DAC寄存器12位D/A转换器Iout1Iout2VREFRfbDI11DI4DI3DI0BYTE1/BYTE2CSWR1WR2XFERLE1LE2LE3M3M2M1LE=1,输出跟随输入LE=0,输入数据锁存.12位D/A转换器DAC1208 12位电流输出型D/A转换器 内部有两个输入锁存器(一个8位,一个4位),和12位DAC锁存器,分别由 控制。BYTE1/BYTE2 输入控制端 高电平:DI4-DI11同时锁存到输入寄存器 低电平:DI0-DI3锁存到4位输入寄存器
19、 DAC寄存器的锁存控制端 高电平:QD,输入寄存器与DAC寄存器直通 低电平:DAC寄存器锁存 iLE12位D/A转换器DAC1208 引脚结构 24引脚,双列直插式封装 数 字 量 输 入 线DI11DI0(12条)控制线(5条)输出线(3条)电源线(4条)CSWR1AGNDDI9DI8DI2DI3DI4DI5DI6DI7VREFRfbDGNDVccBYTE1/BYTE2WR2XFERIout2Iout1DAC1208110987654322014151617181913121124232221(LSB)DI0DI1DI11(MSB)DI1012位D/A转换器DAC1208?DAC1208
20、与MCS-51的接口-+OA8031EAALEP0.3 P0.0P0.7 P0.4WR地址锁存器Q0Q1Q7译码器1111111B1111110BBYTE1/BYTE2XFERCSWR1WR2RfbIout1Iout2VoutDI11 DI8DI7 DI4DI3 DI0DAC1208.12位D/A转换器DAC1208 DAC1208采用的是单极性的输出方式,8位输入寄存器的地址为FFH,4位输入寄存器的地址为FEH。设内部RAM的20H和21H单元内存放一个12位数字量(20H单元中为低4位,21H单元中为高8位),实现D/A转换的程序为:ORG 0000H ;程序执行开始地址 MOV R0,
21、#0FFH;8位输入寄存器地址 MOV R1,#21H MOV A,R1;高8位数字量送 A MOVX R0,A;高8位数字量送 8位输入寄存器 DEC R0 DEC R1 MOV A,R1;低4位数字量送 A SWAP A;A中高低4位互换 MOVX R0,A;低4位数字量送 4位输入寄存器 DEC R0 MOVX R0,A;启动D/A转换 END 12位D/A转换器DAC1208 PCI-1720(25)PCI-1720是一款PCI总线的4路12位隔离数据量-到-模拟量的输出卡.它能够在输出和PCI总线之间提供2500VDC的直流隔离保护,PCI-1720非常适合需要有高电压保护的工业现场.可编程输出范围:5V,10V,0-5V,0-10V,0-20Ma,4-20mA 系统复位后保持输出设定 备注:传送类指令传送类指令MOV、MOVX、MOVC?MOV类指令只访问片内的数据存储区(即内部RAM区和SFR区),这些单元和位的地址只有 8位而非16位。?MOVX类指令专门用于访问片外 64KB的数据存储区,通常与16位数据指针DPTR搭配使用。?MOVC类指令专门用于访问片外 4KB的程序存储区。