《DAC0832数模转换实验(共5页).doc》由会员分享,可在线阅读,更多相关《DAC0832数模转换实验(共5页).doc(5页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上一、实验目的1、 掌握DAC0832直通方式,单缓冲器方式、双缓冲器方式的编程方法2、 掌握D/A转换程序的编程方法和调试方法二、实验说明DAC0832是8位D/A转换器,它采用CMOS工艺制作,具有双缓冲器输入结构,其引脚排列如图所示,DAC0832各引脚功能说明:DI0DI7:转换数据输入端。CS:片选信号输入端,低电平有效。ILE:数据锁存允许信号输入端,高电平有效。WR1:第一写信号输入端,低电平有效,Xfer:数据传送控制信号输入端,低电平有效。WR2:第二写信号输入端,低电平有效。Iout1:电流输出1端,当数据全为1时,输出电流最大;当数据全为0时,输出
2、电流最小。Iout2:电流输出2端。DAC0832具有:Iout1+Iout2=常数的特性。Rfb:反馈电阻端。Vref:基准电压端,是外加的高精度电压源,它与芯片内的电阻网络相连接,该电压范围为:-10V+10V。VCC和GND:芯片的电源端和地端。DAC0832内部有两个寄存器,而这两个寄存器的控制信号有五个,输入寄存器由ILE、CS、WR1控制,DAC寄存器由WR2、Xref控制,用软件指令控制这五个控制端可实现三种工作方式:直通方式、单缓冲方式、双缓冲方式。直通方式是将两个寄存器的五个控制端预先置为有效,两个寄存器都开通只要有数字信号输入就立即进入D/A转换。单缓冲方式使DAC0832
3、的两个输入寄存器中有一个处于直通方式,另一个处于受控方式,可以将WR2和Xfer相连在接到地上,并把WR1接到80C51的WR上,ILE接高电平,CS接高位地址或地址译码的输出端上。双缓冲方式把DAC0832的输入寄存器和DAC寄存器都接成受控方式,这种方式可用于多路模拟量要求同时输出的情况下。三种工作方式区别是:直通方式不需要选通,直接D/A转换;单缓冲方式一次选通;双缓冲方式二次选通。三、实验步骤1、用8P数据线连接单片机最小应用系统1模块的 P0口到D/A转换模块的DI0DI7口,用二号导线分别连接单片机最小应用系统1模块的P2.0、WR到D/A转换模块的P2.0、WR,连接D/A转换模
4、块的Vref口到-5V口,D/A转换模块的OUT接示波器探头。2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统1模块的锁紧插座中,请注意仿真器的方向:缺口朝上。3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加“TH14_DAC0832.ASM”源程序,进行编译,直到编译无误。4、打开模块电源和总电源开关,点击开始调试按钮,点击RUN按钮运行程序。5、实验现象:观察示波器测量输出正弦波的周期和幅度,调节D/A转换模块的电位器可改变正弦波的幅度。四、实验流程图及源程序1.流程图结束开始延时等待转换启动D/A转换转换结束输出延时2. 源程序DAC0
5、832 EQU 0FEFFH ORG 8000H AJMP START ORG 8100HSTART: MOV SP,#60H MOV R0,#0 ;定义指向正弦DAC数据的指针,因为有361个数据 MOV R1,#0 ;所以用了R0和R1两个寄寸器LOOP: MOV A,R0 MOV DPTR,#SINE_DATA CJNE R1,#1,LOW_TAB INC DPH ;判断指针的高位字节R1是否为1。如果是则DPH加1LOW_TAB: MOVC A,A+DPTR ;取出正弦波DAC的数据 MOV DPTR,#DAC0832 MOVX DPTR,A ;启动D/A转换 INC R0 ;指针底八
6、位加1处理 CJNE R1,#1,INC_LOW CJNE R0,#105,INC_OK MOV R0,#0 ;如果已经取完数据并输出,则重新设置指针 MOV R1,#0 SJMP INC_OKINC_LOW: CJNE R0,#0,INC_OK ;判断是否要进位 MOV R1,#1INC_OK: ACALL DELAY AJMP LOOP;*;通过设置延时时间的长短来改变锯齿波的周期;*DELAY: MOV R7,#5 ;改变数值可以改变正弦波的频率 DJNZ R7,$ RET;*;正弦波数据表,8位DAC的数据;*SINE_DATA: DB 128,130,132,135,137,139,
7、141,144,146,148 DB 150,152,155,157,159,161,163,165,168,170 DB 172,174,176,178,180,182,184,186,188,190 DB 192,194,196,198,200,201,203,205,207,209 DB 210,212,214,215,217,219,220,222,223,225 DB 226,227,229,230,232,233,234,235,237,238 DB 239,240,241,242,243,244,245,246,247,247 DB 248,249,250,250,251,252
8、,252,253,253,254 DB 254,254,255,255,255,255,255,255,255,255 DB 255,255,255,255,255,255,255,255,255,254 DB 254,254,253,253,252,252,251,250,250,249 DB 248,247,247,246,245,244,243,242,241,240 DB 239,238,237,235,234,233,232,230,229,227 DB 226,225,223,222,220,219,217,215,214,212 DB 210,209,207,205,203,20
9、1,200,198,196,194 DB 192,190,188,186,184,182,180,178,176,174 DB 172,170,168,165,163,161,159,157,155,152 DB 150,148,146,144,141,139,137,135,132,130 DB 128,126,124,121,119,117,115,112,110,108 DB 106,104,101,99,97,95,93,91,88,86 DB 84,82,80,78,76,74,72,70,68,66 DB 64,62,60,58,56,55,53,51,49,47 DB 46,44
10、,42,41,39,37,36,34,33,31 DB 30,29,27,26,24,23,22,21,19,18 DB 17,16,15,14,13,12,11,10,9,9 DB 8,7,6,6,5,4,4,3,3,2 DB 2,2,1,1,1,0,0,0,0,0 DB 0,0,0,0,0,0,1,1,1,2 DB 2,2,3,3,4,4,5,6,6,7 DB 8,9,9,10,11,12,13,14,15,16 DB 17,18,19,21,22,23,24,26,27,29 DB 30,31,33,34,36,37,39,41,42,44 DB 46,47,49,51,53,55,56
11、,58,60,62 DB 64,66,68,70,72,74,76,78,80,82 DB 84,86,88,91,93,95,97,99,101,104 DB 106,108,110,112,115,117,119,121,124,126 DB 128 END五、实验思考题1、计算输出正弦波的周期,并说明如何改变输出正弦波的周期。2、硬件电路不改动的情况下,请编程实现输出波形为锯齿波及三角波。3、请画出DAC0832在双缓冲工作方式时的接口电路,并用两片DAC0832实现图形x轴和y轴偏转放大同步输出。六、实验电路图本实验用到单片机最小应用系统1模块, D/A转换模块。单片机最小应用系统1模块电路原理参考附录三,D/A转换模块电路原理参考图14.1。图14.1 D/A转换模块电路原理专心-专注-专业