《单片机转换器和转换器 (2)PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《单片机转换器和转换器 (2)PPT讲稿.ppt(67页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单片机转换器和转换器第1页,共67页,编辑于2022年,星期五A/DA/D及及D/AD/A转换器的性能指标转换器的性能指标分辨率(分辨率(ResolutionResolution)分分辨辨率率是是指指A/DA/D转转换换器器能能分分辨辨的的最最小小输输出出模模拟拟增增量量,取取决决于于输输入入数字量的二进制位数。数字量的二进制位数。转换精度(转换精度(Conversion AccuracyConversion Accuracy)转换精度指满量程时转换精度指满量程时ADCADC的实际模拟输出值和理论值的接近程度。的实际模拟输出值和理论值的接近程度。量程量程(满刻度范围满刻度范围FULL Scal
2、e Range)FULL Scale Range)量程是指输入模拟电压的变化范围。例如某转换器具有量程是指输入模拟电压的变化范围。例如某转换器具有10V10V的的单极性范围或单极性范围或-5-5+5V+5V的双极性范围。则它们的量程都为的双极性范围。则它们的量程都为10V10V。满。满刻度只是个名义值,实际的刻度只是个名义值,实际的A/DA/D,D/AD/A转换器的最大输出值总是比满转换器的最大输出值总是比满刻度值小刻度值小1/21/2n n,n n为转换器的位数。例如为转换器的位数。例如1212位的位的A/DA/D转换器,其满刻度转换器,其满刻度值为值为10V10V,而实际的最大输出值为,而
3、实际的最大输出值为:A/DA/D转换器的主要技术指标转换器的主要技术指标第2页,共67页,编辑于2022年,星期五线性度(线性度(LinearityLinearity)线性度是指ADC的实际转换特性曲线和理想直线之间的最大偏移差。转换时间(转换时间(Conversion Time)从发出启动转换开始直至获得稳定的二进代码所需的时间称为转换时间,转换时间与转换器工作原理及其位数有关,同种工作原理的转换器,通常位数越多,其转换时间越长。第3页,共67页,编辑于2022年,星期五 D/AD/A转换器的主要技术指标转换器的主要技术指标 D/AD/A转换器的主要技术指标与转换器的主要技术指标与A/DA/
4、D转换器基本相同,转换器基本相同,只是转换时间的概念略有不同,只是转换时间的概念略有不同,D/AD/A转换器的转换时间转换器的转换时间又叫建立时间,它是指当输入的二进制代码从最小值又叫建立时间,它是指当输入的二进制代码从最小值突然跳变至最大值时,其模拟输出电压相应的满度跳突然跳变至最大值时,其模拟输出电压相应的满度跳跃并达到稳定所需的时间。一般而言,跃并达到稳定所需的时间。一般而言,D/AD/A的转换时间的转换时间比比A/DA/D要短得多。要短得多。第4页,共67页,编辑于2022年,星期五DACDAC芯片类型及接口方法芯片类型及接口方法各种类型的各种类型的DACDAC芯片都具有数字量输入端和
5、模拟量输芯片都具有数字量输入端和模拟量输出端及基准电压端。数字输入端有以下几种类型:出端及基准电压端。数字输入端有以下几种类型:无数据锁存器,无数据锁存器,带单数据锁存器,带单数据锁存器,带双数据带双数据锁存器,锁存器,可接收串行数字输入。第可接收串行数字输入。第1 1种在与单片机种在与单片机接口时,要外加锁存器,第接口时,要外加锁存器,第2 2种和第种和第3 3种可直接与单片机种可直接与单片机接口,第接口,第4 4种与单片机接口十分简单,接收数据较慢,种与单片机接口十分简单,接收数据较慢,适用于远距离现场控制的场合。模拟量输出有两种方式:适用于远距离现场控制的场合。模拟量输出有两种方式:电压
6、输出及电流输出。电压输出的电压输出及电流输出。电压输出的DACDAC芯片相当于一个芯片相当于一个电压源,其内阻很小,选用这种芯片时,与它匹配电压源,其内阻很小,选用这种芯片时,与它匹配的负载电阻应较大。电流输出的芯片相当于电流源,的负载电阻应较大。电流输出的芯片相当于电流源,其内阻较大,选用这种芯片时,负载电阻不可太大。其内阻较大,选用这种芯片时,负载电阻不可太大。第5页,共67页,编辑于2022年,星期五在实际应用中,常选用电流输出的在实际应用中,常选用电流输出的DACDAC芯片实芯片实现电压输出,如图所示现电压输出,如图所示第6页,共67页,编辑于2022年,星期五无内部数据锁存器的无内部
7、数据锁存器的DACDAC芯片,尤其是分辩率高于芯片,尤其是分辩率高于8 8位的位的DACDAC芯芯片,在设计与片,在设计与8 8位单片机接口时,要外加数据锁存器作为缓位单片机接口时,要外加数据锁存器作为缓冲器。下图是一种单缓冲器接口。冲器。下图是一种单缓冲器接口。第7页,共67页,编辑于2022年,星期五在在10位位DAC芯片与芯片与8位单片机之间接入两个锁存器,锁存器位单片机之间接入两个锁存器,锁存器A锁存锁存10位数据位数据中的低中的低8位,锁存器位,锁存器B锁存高锁存高2位。单片机分两次输出数据,先输出低位。单片机分两次输出数据,先输出低8位数位数据到锁存器据到锁存器A,后输出高,后输出
8、高2位数据到锁存器位数据到锁存器B。设锁存器。设锁存器A和锁存器和锁存器B的地址的地址分别为分别为002CH和和002DH,则执行下列指令后完成一次,则执行下列指令后完成一次D/A转换:转换:MOV DPTR,#002CHMOV A,#DATA8MOVX DPTR,A ;输出低;输出低8位位INC DPTRMOV A,#DATA2MOVX DPTR,A ;输出高;输出高2位位这种接口存在一个问题,就是在输出低这种接口存在一个问题,就是在输出低8位数据和高位数据和高2位数据之间,会产生位数据之间,会产生“毛剌毛剌”现象,如图现象,如图3.3(b)所示。假设两个锁存器原来的数据为所示。假设两个锁存
9、器原来的数据为0001111000,现在要求转换的数据为,现在要求转换的数据为0100001011,新数据分两次输出,新数据分两次输出,第一次输出低第一次输出低8位,这时位,这时DAC将把新的将把新的8位数据的与原来数据的高位数据的与原来数据的高2位一起位一起组成组成0000001011转换成输出电压,而该电压是不需要的,即所谓转换成输出电压,而该电压是不需要的,即所谓“毛刺毛刺”。第8页,共67页,编辑于2022年,星期五避免产生毛刺的方法之一是采用双组缓冲器结避免产生毛刺的方法之一是采用双组缓冲器结构,如下图所示。构,如下图所示。第9页,共67页,编辑于2022年,星期五单片机先把低单片机
10、先把低8 8位数据选通输入锁存器位数据选通输入锁存器1 1中,然后将高中,然后将高2 2位数据选位数据选通输入锁存器通输入锁存器3 3中,并同时选通锁存器中,并同时选通锁存器2 2,使锁存器,使锁存器2 2与锁存器与锁存器3 3组成组成1010位锁存器向位锁存器向DACDAC同时送入同时送入1010位数据由位数据由DACDAC转换成输出电转换成输出电压。当地址如图中所示时,执行以下程序完成一次压。当地址如图中所示时,执行以下程序完成一次D/AD/A转换:转换:MOV DPTRMOV DPTR,#6000H#6000HMOV AMOV A,#DATA8#DATA8MOVX DPTRMOVX DP
11、TR,A A ;输出低;输出低8 8位数据位数据INC DPTRINC DPTRMOV AMOV A,#DATA2#DATA2MOVX DPTRMOVX DPTR,A A ;输出高;输出高2 2位位,并同时输出并同时输出1010位数据位数据第10页,共67页,编辑于2022年,星期五典型典型D/AD/A转换器芯片转换器芯片DAC0832DAC0832及接口及接口 DAC0832DAC0832是是一一个个8 8位位D/AD/A转转换换器器芯芯片片,单单电电源源供供电电,从从+5V+5V+15V+15V均均可可正正常常工工作作,基基准准电电压压的的范范围围为为10V10V,电电流流建建立立时时间间
12、为为1s1s,CMOSCMOS工工艺艺,低低功功耗耗20mm20mm。其其内内部部结结构构由由1 1个个8 8位位输输入入寄寄存存器器、1 1个个8 8位位DACDAC寄存器和寄存器和1 1个个8 8位位D/AD/A转换器组成。转换器组成。第11页,共67页,编辑于2022年,星期五DAC0832DAC0832的内部结构的内部结构DAC0832是典型的带内部双数据缓冲器的是典型的带内部双数据缓冲器的8位位D/A芯片。图中芯片。图中LE是寄存命是寄存命令,当令,当LE=1时,寄存器输出随输入变化,当时,寄存器输出随输入变化,当LE=0时,数据锁存在寄存器中。时,数据锁存在寄存器中。当当ILE端为
13、高电平,端为高电平,CS与与WR1同时为低电平时,使得同时为低电平时,使得LE1=1;当;当WR1变为变为高电平时,输入寄存器便将输入数据锁存。当高电平时,输入寄存器便将输入数据锁存。当XFER与与WR2同时为低电平同时为低电平时,使得时,使得LE2=1,DAC寄存器的输出随寄存器的输入变化,寄存器的输出随寄存器的输入变化,WR2上升沿将输上升沿将输入寄存器的信息锁存在该寄存器中。入寄存器的信息锁存在该寄存器中。第12页,共67页,编辑于2022年,星期五DAC0832DAC0832的工作方式的工作方式 DAC0832DAC0832利用利用WRWR1 1 、WRWR2 2 、ILEILE、XF
14、ER XFER 控制信号可以控制信号可以构成三种不同的工作方式。构成三种不同的工作方式。1)1)直通方式直通方式WRWR1 1=WR=WR2 2=0=0时,数据可以从输入端时,数据可以从输入端经两个寄存器直接进入经两个寄存器直接进入D/AD/A转换器。转换器。2)2)单缓冲方式单缓冲方式两个寄存器之一始终处于直通,即两个寄存器之一始终处于直通,即WRWR1 1=0=0或或WRWR2 2=0=0,另一个寄存器处于受控状态。,另一个寄存器处于受控状态。3)3)双缓冲方式双缓冲方式 两个寄存器均处于受控状态。这种两个寄存器均处于受控状态。这种工作方式适合于多模拟信号同时输出的应用场合。工作方式适合于
15、多模拟信号同时输出的应用场合。第13页,共67页,编辑于2022年,星期五单缓冲方式的接口与应用单缓冲方式的接口与应用1 1单缓冲方式连接单缓冲方式连接 所谓单缓冲方式就是使所谓单缓冲方式就是使DAC0832DAC0832的两个输入寄存器中有一的两个输入寄存器中有一个处于直通方式,而另一个处于受控锁存方式。个处于直通方式,而另一个处于受控锁存方式。为使为使DACDAC寄存器处于直通方式,应使寄存器处于直通方式,应使WRWR2 2=0=0和和XFER=0XFER=0。为。为此可把这两个信号固定接地,或如电路中把此可把这两个信号固定接地,或如电路中把WRWR2 2与与WRWR1 1相连,相连,把把
16、XFERXFER与与CSCS相连。相连。为使输入寄存器处于受控锁存方式,应把为使输入寄存器处于受控锁存方式,应把WRWR1 1接接80518051的的WRWR,ILEILE接高电平。此外还应把接高电平。此外还应把CSCS接高位地址线或地址译码输出接高位地址线或地址译码输出,以便于对输入寄存器进行选择。,以便于对输入寄存器进行选择。第14页,共67页,编辑于2022年,星期五DAC0832DAC0832单缓冲方式接口单缓冲方式接口 第15页,共67页,编辑于2022年,星期五2 2单缓冲方式应用举例单缓冲方式应用举例-波形发生器波形发生器在一些控制应用中,需要有一个线性增长的电压(锯齿波)在一些
17、控制应用中,需要有一个线性增长的电压(锯齿波)来控制检测过程、移动记录笔或移动电子束等。对此可通过来控制检测过程、移动记录笔或移动电子束等。对此可通过在在DAC0832DAC0832的输出端接运算放大器,由运算放大器产生锯齿的输出端接运算放大器,由运算放大器产生锯齿波来实现,其电路连接如图所示。波来实现,其电路连接如图所示。第16页,共67页,编辑于2022年,星期五图中的图中的DAC0832DAC0832工作于单缓冲方式,其中输入寄存器受控,而工作于单缓冲方式,其中输入寄存器受控,而DACDAC寄寄存器直通。假定输入寄存器地址为存器直通。假定输入寄存器地址为7FFFH7FFFH,产生锯齿波的
18、程序清单如,产生锯齿波的程序清单如下:下:MOV AMOV A,#00H#00H ;取下限值;取下限值 MOV DPTRMOV DPTR,#7FFFH#7FFFH;指向;指向08320832口地址口地址MMMM:MOVX DPTRMOVX DPTR,A A ;输出;输出 INC AINC A;延时;延时 NOPNOP NOP NOP NOP NOP SJMP MM SJMP MM;反复;反复执执行上述程序就可得到如下行上述程序就可得到如下图图所示的所示的锯齿锯齿波。波。第17页,共67页,编辑于2022年,星期五几点说明:几点说明:(1)(1)程序每循环一次,程序每循环一次,A A加加1 1,
19、因此实际上锯齿波的上升边是由,因此实际上锯齿波的上升边是由256256个个小阶梯构成的,但由于阶梯很小,所以宏观上看就如图中所画的小阶梯构成的,但由于阶梯很小,所以宏观上看就如图中所画的先行增长锯齿波。先行增长锯齿波。第18页,共67页,编辑于2022年,星期五(2 2)可通过循环程序段的机器周期数,计算出锯齿波的周期。)可通过循环程序段的机器周期数,计算出锯齿波的周期。并可根据需要,通过延时的方法来改变波形周期。若要改变锯并可根据需要,通过延时的方法来改变波形周期。若要改变锯齿波的频率,可在齿波的频率,可在AJMP MMAJMP MM指令前加入延迟程序即可。延时较短时可指令前加入延迟程序即可
20、。延时较短时可用用NOPNOP指令实现(本程序就是如此),需要延时较长时,可以指令实现(本程序就是如此),需要延时较长时,可以使用一个延长子程序。延迟时间不同,波形周期不同,锯齿波使用一个延长子程序。延迟时间不同,波形周期不同,锯齿波的斜率就不同。的斜率就不同。(3 3)通过)通过A A加加1 1,可得到正向的锯齿波,反之,可得到正向的锯齿波,反之A A减减1 1可得到负向的锯可得到负向的锯齿波。齿波。(4 4)程序中程序中A A的变化范围是的变化范围是0 0255255,因此得到的锯齿波是满幅度的。,因此得到的锯齿波是满幅度的。如要求得到非满幅锯齿波,可通过计算求的数字量的处置和终值,如要求
21、得到非满幅锯齿波,可通过计算求的数字量的处置和终值,然后在程序中通过置初值和终值的方法实现。然后在程序中通过置初值和终值的方法实现。第19页,共67页,编辑于2022年,星期五产生矩形波电压的产生矩形波电压的参考程序:参考程序:ORG 1100HORG 1100HSTART:MOV DPTR,#7FFFH START:MOV DPTR,#7FFFH ;送;送DAC0832DAC0832口地址口地址LOOP:MOV A,#dataH LOOP:MOV A,#dataH ;送高电平数据;送高电平数据 MOVX DPTR,AMOVX DPTR,A LCALL DELAYH LCALL DELAYH
22、;调用延时子程序;调用延时子程序 MOV A,#dataL MOV A,#dataL ;送低电平数据;送低电平数据 MOVX DPTR,AMOVX DPTR,A LCALL DELAYL LCALL DELAYL ;调用延时子程序;调用延时子程序 SJMP LCALLSJMP LCALL 第20页,共67页,编辑于2022年,星期五执行上述程序就可得到如下图所示的矩形波执行上述程序就可得到如下图所示的矩形波第21页,共67页,编辑于2022年,星期五几点说明:几点说明:(1 1)以上程序产生的是矩形波,其低点平的宽度由延时子)以上程序产生的是矩形波,其低点平的宽度由延时子程序程序DELAYLD
23、ELAYL所延时的时间来决定,高电平的宽度则由所延时的时间来决定,高电平的宽度则由DELAYHDELAYH所所延时的时间决定。延时的时间决定。(2 2)改变延时子程序改变延时子程序DELAYLDELAYL和的和的DELAYHDELAYH延时时间,就可延时时间,就可改变矩形波上下沿的宽度。若改变矩形波上下沿的宽度。若DELAYL=DELAYHDELAYL=DELAYH(两者延时一样)(两者延时一样),则输出的是方波。,则输出的是方波。(3 3)改变上限值或下限值便可改变矩形波的幅值;单极改变上限值或下限值便可改变矩形波的幅值;单极性输出时为性输出时为0 0-5V-5V或或0 0+5V+5V;双极
24、性输出时为;双极性输出时为-5V-5V+5V+5V。第22页,共67页,编辑于2022年,星期五双缓冲方式的接口与应用双缓冲方式的接口与应用 在多路在多路D/AD/A转换的情况下,若要求同步转换输出,必须采转换的情况下,若要求同步转换输出,必须采用双缓冲方式。用双缓冲方式。DAC0832DAC0832采用双缓冲方式时,数字量的输入锁存采用双缓冲方式时,数字量的输入锁存和和D/AD/A转换输出是分两步进行的。转换输出是分两步进行的。第一,第一,CPUCPU分时向各路分时向各路D/AD/A转换器输入要转换的数字量并锁转换器输入要转换的数字量并锁存在各自的输入寄存器中。存在各自的输入寄存器中。第二,
25、第二,CPUCPU对所有的对所有的D/AD/A转换器发出控制信号,使各路输入寄转换器发出控制信号,使各路输入寄存器中的数据进入存器中的数据进入DACDAC寄存器,实现同步转换输出。寄存器,实现同步转换输出。下图为两片下图为两片DAC0832DAC0832与与80318031接实现的双缓冲方式连接电路,接实现的双缓冲方式连接电路,能实现两路同步输出。能实现两路同步输出。第23页,共67页,编辑于2022年,星期五 80518051与与DAC0832DAC0832的双缓冲方式接口的双缓冲方式接口 第24页,共67页,编辑于2022年,星期五实现两路同步输出的程序如下:实现两路同步输出的程序如下:M
26、OV DPTR,#0DFFFH;送;送0832(1)输入锁存器地址)输入锁存器地址 MOV A,#data1 ;data1送送0832(1)输入锁存器)输入锁存器 MOVX DPTR,A;MOV DPTR,#0BFFFH;送;送0832(2)输入锁存器地址)输入锁存器地址 MOV A,#data2 ;data2送送0832(2)输入锁存器)输入锁存器 MOVX DPTR,A;MOV DPTR,#7FFFH ;送两路;送两路DAC寄存器地址寄存器地址 MOVX DPTR,A ;两路数据同步转换输出;两路数据同步转换输出 第25页,共67页,编辑于2022年,星期五8051与与12位位DAC的接口
27、的接口DAC1208的内部结构和原理的内部结构和原理与DAC0832相似,DAC1208也是双缓冲器结构,输入控制线与DAC0832也很相似,和用来控制输入寄存器,和用来控制DAC寄存器,但增加了一条控制线BYTE1/BYTE2,用来区 分 输 入 8位 寄 存 器 和 4位 寄 存 器,当BYTE1/BYTE2=1时,两个寄存器都被选中,BYTE1/BYTE2=0时,只选中4位输入寄存器。第26页,共67页,编辑于2022年,星期五DAC1208DAC1208内部结构框图内部结构框图 第27页,共67页,编辑于2022年,星期五 80518051和和DAC1208DAC1208的连接的连接第
28、28页,共67页,编辑于2022年,星期五MOV R0MOV R0,#21H#21H ;8 8位输入寄存器地址位输入寄存器地址MOV R1MOV R1,#DIG#DIG ;高;高8 8位数据地址位数据地址MOV AMOV A,R1 R1 ;取高;取高8 8位数据位数据MOVX R0MOVX R0,A A ;送;送DAC1208DAC1208DEC R0 DEC R0 ;4 4位输入寄存器地址位输入寄存器地址INC R1 INC R1 ;低;低4 4位数据地址位数据地址MOV AMOV A,R1 R1 ;取低;取低4 4位数据位数据SWAP A SWAP A ;与高;与高4 4位数交换位数交换M
29、OVX R0MOVX R0,A A ;送;送DAC1208DAC1208MOV R0MOV R0,#22H#22H ;DAC1208DAC1208的的DACDAC寄存器地址寄存器地址MOVX R0MOVX R0,A A ;完成;完成1212位位D/AD/A转换。转换。设设4 4位输入寄存器地址为位输入寄存器地址为20H20H,8 8位输入寄存器地址为位输入寄存器地址为21H21H,采用,采用2 2根译码根译码器输出线作为器输出线作为DAC208DAC208的的(对应对应l l地址地址20H20H和和21H)21H)及及(对应地址对应地址22H)22H),设,设1212位数据存放在内部位数据存放
30、在内部RAMRAM区的区的DIGDIG和和DIG+1DIG+1单元中,高单元中,高8 8位存于位存于DIGDIG,低,低4 4位位存于存于DIG+1DIG+1。转换程序如下:转换程序如下:第29页,共67页,编辑于2022年,星期五ADC接口技术接口技术阶梯波比较式阶梯波比较式ADC工作原理:工作原理:转换开始时,计数器复转换开始时,计数器复0 0,DACDAC的输出为的输出为Vd=0Vd=0。若输入电压。若输入电压ViVi为正,为正,则比较器输出则比较器输出VcVc为正,与门打开,计数器对时钟脉冲进行计数,为正,与门打开,计数器对时钟脉冲进行计数,DACDAC输出输出即随计数脉冲的增加而增加
31、,如图所示,当即随计数脉冲的增加而增加,如图所示,当Vd ViVd Vi时,比较器输出变负,时,比较器输出变负,与门关闭,停止计数。计数器的计数值正比于输入电压,完成了从输与门关闭,停止计数。计数器的计数值正比于输入电压,完成了从输入模拟量入模拟量电压到计数器的计数值电压到计数器的计数值数字量的转换。数字量的转换。第30页,共67页,编辑于2022年,星期五工作原理是单片机通过工作原理是单片机通过P1口发送一个口发送一个8位数据到位数据到DAC,比较,比较器对器对DAC的输出的输出Vs和需要转换的模拟输入量和需要转换的模拟输入量Vx进行比较。进行比较。比较的结果比较的结果(为为0,表示,表示V
32、sVx)送到单片机送到单片机的的T0引脚,单片机通过测试引脚引脚,单片机通过测试引脚T0来确定与模拟输入量来确定与模拟输入量Vx合适的数值。合适的数值。用单片机用单片机IO口实现比较式口实现比较式ADC第31页,共67页,编辑于2022年,星期五编程思想是先从编程思想是先从P1口输出数据口输出数据10000000B然后测然后测T0,如果,如果T0为为0则保持数据最高位则保持数据最高位D7为为1,如果,如果T0为为1则清则清“0”D7位,再从位,再从P1口输口输出数据出数据1000000B,判,判T0,若,若T0为为0则保持则保持D6位为位为1,若,若T0为为1则清则清“0”D6位,如此进位,如
33、此进行,最后从行,最后从P1口输出口输出1B,判,判T0,若,若T0为为0则保持则保持D0位为位为1,若,若T0为为1则清则清“0”D0位,至此便得到与位,至此便得到与Vx对应的对应的8位数位数值。值。第32页,共67页,编辑于2022年,星期五AD:MOV R7,#08H ;R7存放比较次数存放比较次数 MOV A,#0 MOV R6,#0 ;R6保存中间结果保存中间结果 MOV R5,#0 ;R5存放新的测试数据存放新的测试数据 SETB C ;置;置1进位位进位位CL1:MOV A,R5 RRC A ;(R5)带带C右环移一位右环移一位 MOV R5,A ORL A,R6 ;与;与R6值
34、相加值相加 MOV P1,A ;从;从P1口输出测试数据口输出测试数据 JB T0,L2 ;若;若T0为为1则不保留此位则不保留此位 MOV R6,A ;若;若T0为为0则保留此位为则保留此位为1L2:DJNZ R7,L1 ;判;判8次比较完否。次比较完否。RET第33页,共67页,编辑于2022年,星期五 ADC0809ADC0809内部逻辑结构内部逻辑结构 ADC0809ADC0809引脚图引脚图 典型典型A/D转换器芯片转换器芯片ADC0809第34页,共67页,编辑于2022年,星期五ADC0809ADC0809内部多路开关可选通内部多路开关可选通8 8个模拟通道,允许个模拟通道,允许
35、8 8路模拟量路模拟量分时输入,共用一个分时输入,共用一个A/DA/D转转换器进行转换,这是一种经济换器进行转换,这是一种经济的多路数据采集方法。地址锁的多路数据采集方法。地址锁存与译码电路完成对存与译码电路完成对A A、B B、C C 3 3个地址位进行锁存和译码,个地址位进行锁存和译码,其译码输出用于通道选择,其其译码输出用于通道选择,其转换结果通过三态输出锁存器转换结果通过三态输出锁存器存放、输出,因此可以直接与存放、输出,因此可以直接与系统数据总线相连。系统数据总线相连。通道选择表通道选择表 第35页,共67页,编辑于2022年,星期五ADC0809ADC0809的工作时序图的工作时序
36、图 第36页,共67页,编辑于2022年,星期五 ADC0809ADC0809芯芯片片为为2828引引脚脚为为双双列列直直插插式式封封装装,其其引引脚脚排排列列如图所示。主要信号引脚的功能如下:如图所示。主要信号引脚的功能如下:ININ7 7ININ0 0模拟量输入通道模拟量输入通道 A A、B B、CC地址线。地址线。通道端口选择线,通道端口选择线,A A为低地为低地址,址,C C为为 高地址,引脚图中为高地址,引脚图中为ADDAADDA,ADDBADDB和和ADDCADDC。其地。其地址状态与通道对应关系见表址状态与通道对应关系见表9-19-1。ALEALE地址锁存允许信号。对应地址锁存允
37、许信号。对应ALEALE上跳沿,上跳沿,A A、B B、C C地址状态送入地址锁存器中。地址状态送入地址锁存器中。第37页,共67页,编辑于2022年,星期五 STARTSTART转换启动信号。转换启动信号。STARTSTART上升沿时,复位上升沿时,复位ADC0809ADC0809;STARTSTART下降沿时启动芯片,开始进行下降沿时启动芯片,开始进行A/DA/D转换;转换;在在A/DA/D转换期间,转换期间,STARTSTART应保持低电平。本信号有时简写应保持低电平。本信号有时简写为为ST.ST.D D7 7D D0 0数据输出线。为三态缓冲输出形式,可数据输出线。为三态缓冲输出形式,
38、可以和单片以和单片 机的数据线直接相连。机的数据线直接相连。D D0 0为最低位,为最低位,D D7 7为为最高最高 OEOE输输出出允允许许信信号号。用用于于控控制制三三态态输输出出锁锁存存器器向向单单片片机机输输出出转转换换得得到到的的数数据据。OE=0OE=0,输输出出数数据据线线呈呈高阻;高阻;OE=1OE=1,输出转换得到的数据。,输出转换得到的数据。第38页,共67页,编辑于2022年,星期五 CLK CLK 时钟信号。时钟信号。ADC0809ADC0809的内部没有时钟电路,的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。通常所需时钟信号由外界提供,因此有时钟信号
39、引脚。通常使用频率为使用频率为500KHz500KHz的时钟信号。的时钟信号。EOCEOC转换结束信号。转换结束信号。EOC=0,EOC=0,正在进行转换;正在进行转换;EOC=1,EOC=1,转换结束。使用中该状态信号即可作为查询的状转换结束。使用中该状态信号即可作为查询的状态态 标志,又可作为中断请求信号使用。标志,又可作为中断请求信号使用。VccVcc+5V+5V电源。电源。VrefVref参参考考电电源源参参考考电电压压用用来来与与输输入入的的模模拟拟信信号号进进 行行 比比 较较,作作 为为 逐逐 次次 逼逼 近近 的的 基基 准准。其其 典典 型型 值值 为为+5V(Vref+5V
40、(Vref(+)(+)=+5V,Vref=+5V,Vref(-)(-)=-5V)=-5V)。第39页,共67页,编辑于2022年,星期五80518051单片机与单片机与ADC0809ADC0809的接口的接口第40页,共67页,编辑于2022年,星期五 采用线选法规定其端口地址采用线选法规定其端口地址用单片机的用单片机的P2.7引脚作为片选信号引脚作为片选信号,因此端口地址为因此端口地址为7FFFH。片选信号和信号一起经或非门产生。片选信号和信号一起经或非门产生ADC0809的启动信号的启动信号START和地址锁存信号和地址锁存信号ALE;片选信号和信号一起经或非门产生片选信号和信号一起经或非
41、门产生ADC0809输出允输出允许信号许信号OE,OE=1时选通三态门使输出锁存器中的转时选通三态门使输出锁存器中的转换结果送入数据总线。换结果送入数据总线。ADC0809的的EOC信号经反相后信号经反相后接到接到8051的引脚的引脚 用于产生转换完成的中断请求信号。用于产生转换完成的中断请求信号。ADC0809芯片的芯片的3位模拟量输入通道地址码输入端位模拟量输入通道地址码输入端A、B、C分别接到分别接到8031的的P0.0、P0.1和和P0.2,故只要向端,故只要向端口地址口地址7FFFH分别写入数据分别写入数据00H07H,即可启动模,即可启动模拟量输入通道拟量输入通道07进行进行A/D
42、转换。转换。第41页,共67页,编辑于2022年,星期五转换数据的传送转换数据的传送 A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式。(1 1)定时传送方式)定时传送方式 对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。例如ADC0809转换时间为128s,相当于6MHz的MCS-51单片机共64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。(2 2)查询方式)查询方式 A/D转换芯片由表明
43、转换完成的状态信号,例如ADC0809的EOC端。因此可以用查询方式,测试EOC的状态,即可却只转换是否完成,并接着进行数据传送。(3)中断方式)中断方式把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。第42页,共67页,编辑于2022年,星期五 不管使用上述那种方式,只要一旦确定转换完成,即可通过指令进行数据传送。首先送出口地址并以RD信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接受。不管使用上述那种方式,只要一旦确认转换结束,便可通过指令进行数据传送。所用的指令为:MOV DPTR,#7FFFH MOVX A ,DPTR该指令在送出有效口地址的同
44、时,发出有效信号RD,使0809的输出允许信号OE有效,从而打开三态门输出,使转换后的数据通过数据总线送入A累加器中。第43页,共67页,编辑于2022年,星期五 需要说明的是,ADC0809的三个地址端A、B、C既可如前所述与数据线相连,也可与地址线相连,例如与A0A2相连。这时启动A/D转换的指令与上述类似,只不过A的内容为任意数。例如当A、B、C分别与A0、A1、A2相连时,启动A/D转换只需要一条MOVX指令。在此之前,要将P2.7清零并将最低三位与所选择的通道对应的口地址送入数据指针DPTR中。例如要选择IN7通道时,可采用如下两条指令启动A/D转换:MOVDPTR,#7FFFH;送
45、入0809的口地址MOVXDPTR,A;启动A/D转换(IN7)注意:此处A中内容与A/D转换无关,可为任意值。第44页,共67页,编辑于2022年,星期五A/DA/D转换应用举例转换应用举例采用中断工作方式对8路模拟输入信号依次进行A/D转换并把转换结果存入内部数据存储器的程序,设数据存储器的首地址为30H,采用前面的接口电路。初始化程序:初始化程序:MOVR0,#30H;数据区首地址MOVR4,#08H;八路模拟信号MOVR2,#00H;模拟通道0SETBEA;开中断SETBEX1;允许外中断1SETBIT1;边沿触发MOVDPTR,#7FFFH;ADC0809端口地址MOVA,R2MOV
46、XDPTR,A;启动ADC0809SJMP$;等待第45页,共67页,编辑于2022年,星期五中断服务程序:中断服务程序:MOVXA,DPTR;输入转换结果MOVR0,A;存入内存INCR0;数据区地址加1INCR2;修改输入通道MOVA,R2MOVXDPTR,A;启动下一路通道DJNZR4,LOOP;八路未完,循环CLREX1;八路完毕,关中断LOOP:RETI;中断返回第46页,共67页,编辑于2022年,星期五AD574A与与8051单片机接口单片机接口第47页,共67页,编辑于2022年,星期五AD574AAD574A逻辑控制真值表逻辑控制真值表 第48页,共67页,编辑于2022年,
47、星期五 (a)启动与转换)启动与转换 (b)转换结果输出)转换结果输出AD574A工作时序图工作时序图第49页,共67页,编辑于2022年,星期五积分型积分型A/D 转换器工作原理转换器工作原理双积分型双积分型A/D转换器工作原理转换器工作原理 双双积积分分型型A/D转转换换是是一一种种间间接接A/D转转换换技技术术。首首先先将将模模拟拟电电压压转转换换成成积积分分时时间间,然然后后用用数数字字脉脉冲冲计计时时方方法法转转换换成成计计数数脉脉冲冲数数,最最后后将将此此代代表表模模拟拟输输入入电电压压大大小小的的脉脉冲冲数数转转换换成成二二进制或进制或BCD码输出。码输出。第50页,共67页,编
48、辑于2022年,星期五双积分双积分A/D转换电路原理及工作波型图转换电路原理及工作波型图第51页,共67页,编辑于2022年,星期五1.准备期:开关S1、S2、S3断开,S4接通,积分电容C被短路,输出为0。2.采样期:开关S2、S3、S4断开,S1闭合,积分器对输入模拟电压+Vi进行积分,积分时间固定为T1,在采样期结束的t2时刻,积分器输出电压为:式中为被测模拟电压在T1时间内的平均值。3.比较期:从t2时刻开始,开关S1、S2、S4断开,S3闭合,将与被测模拟电压极性相反的标准电压-Er接到积分器的输入端(若被测模拟电压为-Vi,则S1、S3、S4断开,S2闭合,将+Er接到积分器的输入
49、端),使积分器进行反向积分。当积分器的输出回到0时,比较器的输出发生跳变。设在t3时刻积分器回0,此时有:式中T2=t3-t2为比较周期。第52页,共67页,编辑于2022年,星期五在T2周期内对一个周期为的时钟脉冲进行计数,得:由于T1、Er、都是恒定值,从而计数值N就正比于被测模拟电压值,实现了A/D转换。第53页,共67页,编辑于2022年,星期五典型双积分典型双积分A/D转换器芯片转换器芯片ICL7135ICL7135是一种常用的4位半BCD码双积分型单片集成ADC芯片,其分辩率相当于14位二进制数,它的转换精度高,转换误差为1LSB,并且能在单极性参考电压下对双极性输入模拟电压进行A
50、/D转换,模拟输入电压范围为01.9999V。芯片采用了自动校零技术,可保证零点在常温下的长期稳定性,模拟输入可以是差动信号,输入阻抗极高。第54页,共67页,编辑于2022年,星期五ICL7135的输出时序图的输出时序图B8B8、B4B4、B2B2、B1B1:BCDBCD码数据输出,码数据输出,B8B8为最高位,为最高位,B1B1为最低位。为最低位。D5D5、D4D4、D3D3、D2D2、D1D1:BCDBCD码数据的位驱动信号输出端,分别码数据的位驱动信号输出端,分别选通万、千、百、选通万、千、百、十、个位。十、个位。第55页,共67页,编辑于2022年,星期五ICL7135与单片机与单片