单片机与数模转换器的接口与应用.ppt
《单片机与数模转换器的接口与应用.ppt》由会员分享,可在线阅读,更多相关《单片机与数模转换器的接口与应用.ppt(35页珍藏版)》请在三一文库上搜索。
1、第九章 A/D和D/A转换器接口,9.1 MCS-51单片机与D/A转换器的 接口和应用 9.1.1 典型D/A转换器芯片DAC0832 DAC0832是一个8位D/A转换器芯片,单电源供电,从+5V+15V均可正常工作,基准电压的范围为10V,电流建立时间为1s,CMOS工艺,低功耗20mm。其内部结构如图9.1所示,它由1个8位输入寄存器、1个8位DAC寄存器和1个8位D/A转换器组成和引脚排列如图9.2所示。,该D/A转换器为20引脚双列直插式封装,各引脚含义如下: (1)D7D0转换数据输入。 (2)CS片选信号(输入),低电平有效。 (3)ILE数据锁存允许信号(输入),高电平有效。
2、 (4)WR1第一信号(输入),低电平有效。该信号与ILE 信号共同控制输入寄存器是数据直通方式还是数据锁存方式:当ILE=1和XFER=0时,为输入寄存器直通方式;当ILE=1和WR1 =1时,为输入寄存器锁存方式。 (5) WR2 第2写信号(输入),低电平有效.该信号与信号合在一起控制DAC寄存器是数据直通方式还是数据锁存方式:当 WR2=0和XFER=0时,为DAC寄存器直通方式; 当WR2=1和XFER=0时,为DAC寄存器锁存方式。 (6)XFER数据传送控制信号(输入),低电平有效 。,(7)Iout2电流输出“1”。当数据为全“1”时,输出电流最大; 为全“0”时输出电流最小。
3、 (8)Iout2电流输出“2”。 DAC转换器的特性之一是:Iout1 +Iout2=常数。 (9)Rfb反馈电阻端 既运算放大器的反馈电阻端,电阻(15K)已固化在芯片中。因为DAC0832是电流输出型D/A转换器,为得到电压的转换输出,使用时需在两个电流输出端接运算放大器,Rfb 即为运算放大器的反馈电阻,运算放大器的接法如图9.3所示。 (10)Vref基准电压,是外加高精度电压源,与芯片内的电 阻网络相连接,该电压可正可负,范围为-10V+10V. (11)DGND数字地 (12)AGND模拟地,9.1.2 DAC0832工作方式 DAC0832利用WR1 、 WR2 、ILE、XF
4、ER 控制信号可以构成三种不同的工作方式。 1) 直通方式 WR1= WR2 =0时,数据可以从输入端经 两 个寄存器直接进入D/A转换器。 2)单缓冲方式 两个寄存器之一始终处于直通,即WR1=0或WR2=0,另一个寄存器处于受控状态。 3)双缓冲方式 两个寄存器均处于受控状态。这种 工作方式适合于多模拟信号同时输出的应用场合。,9.1.3 单缓冲方式的接口与应用 1单缓冲方式连接 所谓单缓冲方式就是使DAC0832的两个输入寄存器中有一个(多位DAC寄存器)处于直通方式,而另一个处于受控锁存方式。 单缓冲方式连接 如图9.3所示。 为使DAC寄存器处于直通方式,应使WR2 =0和XFER=
5、0。为此可把这两个信号固定接地,或如电路中把WR2与WR1相连,把XFER与CS相连。 为使输入寄存器处于受控锁存方式,应把WR1接80C51的WR,ILE接高电平。此外还应把CS接高位地址线或地址译码输出,以便于对输入寄存器进行选择。,图9.3 DAC0832单缓冲方式接口,2单缓冲方式应用举例 【例9.1】锯齿波电压发生器 在一些控制应用中,需要有一个线性增长的电压(锯齿波)来控制检测过程、移动记录笔或移动电子束等。对此可通过在DAC0832的输出端接运算放大器,由运算放大器产生锯齿波来实现,其电路连接图如图9.4所示。 图9.4 用DAC0832产生锯齿波电路,图中的DAC0832工作于
6、单缓冲方式,其中输入寄存器受控,而DAC寄存器直通。假定输入寄存器地址为7FFFH,产生锯齿波的程序清单如下: MOV A, #00H ;取下限值 MOV DPTR,#7FFFH ;指向0832口地址 MM: MOVX DPTR,A ;输出 INC A ;延时 NOP NOP NOP SJMP MM ;反复 执行上述程序就可得到如图9.5所示的锯齿波。,图9.5 D/A 转换产生的锯齿波 几点说明: (1)程序每循环一次,A加1,因此实际上锯齿波的上升边是由256个小阶梯构成的,但由于阶梯很小,所以宏观上看就如图中所画的先行增长锯齿波。,(2)可通过循环程序段的机器周期数,计算出锯齿波的周期。
7、并可根据需要,通过延时的方法来改变波形周期。若要改变锯齿波的频率,可在AJMP MM指令前加入延迟程序即可。延时较短时可用NOP指令实现(本程序就是如此),需要延时较长时,可以使用一个延长子程序。延迟时间不同,波形周期不同,锯齿波的斜率就不同。 (3)通过A加1,可得到正向的锯齿波,反之A减1可得到负向的锯齿波。 (4) 程序中A的变化范围是0255,因此得到的锯齿波是满幅度的。如要求得到非满幅锯齿波,可通过计算求的数字量的处置和终值,然后在程序中通过置初值和终值的方法实现。,【例9.2】 矩形波电压发生器 采用单缓冲方式,口地址设为FEFFH. 参考程序如下: ORG 1100H START
8、: MOV DPTR , #00FEH ;送DAC0832口地址 LOOP: MOV A , #dataH ;送高电平数据 MOVX DPTR , A LCALL DELAYH ;调用延时子程序 MOV A , #dataL ;送低电平数据 MOVX DPTR , A LCALL DELAYL ;调用延时子程序 SJMP LCALL,执行上述程序就可得到如图9.5所示的矩形波。,图9.5 D/A转换产生的矩形波,几点说明: (1)以上程序产生的是矩形波,其低点平的宽度由延时子程序DELAYL所延时的时间来决定,高电平的宽度则由DELAYH所延时的时间决定。 (2) 改变延时子程序DELAYL和
9、的DELAYH延时时间,就可改变矩形波上下沿的宽度。若DELAYL=DELAYH(两者延时一样),则输出的是方波。 (3) 改变上限值或下限值便可改变矩形波的幅值;单极性输出时为0-5V或0+5V;双极性输出时为-5V+5V。 【例9.3】三角波电压发生器 利用DAC0832产生三角波的参考程序如下:,MOV A , #00H ;取下限值 MOVX DPTR , #FEFFH ;指向0832口地址 SS1: MOVX DPTR , A ;输出 NOP ;延时 NOP NOP SS2: INC A ;转换值增量 JNZ SS1 ;未到峰值,则继续 SS3: DEC A ;已到峰值,则取后沿 MO
10、VX DPTR , A ;输出 NOP ;延时 NOP NOP JNZ SS3 ;未到谷值,则继续 SJMP SS2 ;已到谷值,则反复,9.1.4 双缓冲方式的接口与应用 在多路D/A转换的情况下,若要求同步转换输出,必须采用双缓冲方式。DAC0832采用双缓冲方式时,数字量的输入锁存和D/A转换输出是分两步进行的。 第一, CPU分时向各路D/A转换器输入要转换的数字量并锁存在各自的输入寄存器中。 第二,CPU对所有的D/A转换器发出控制信号,使各路输入寄存器中的数据进入DAC寄存器,实现同步转换输出。 图9.6为两片DAC0832与8031的双缓冲方式连接电路,能实现两路同步输出。,图9
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 数模转换器 接口 应用
链接地址:https://www.31doc.com/p-2309049.html