资源描述:
《DAC0832数模转换实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、DAC0832数模转换实验一、实验目的1、掌握DAC0832直通方式,单缓冲器方式、双缓冲器方式的编程方法2、掌握D/A转换程序的编程方法和调试方法二、实验说明DAC0832是8位D/A转换器,它采用CMOS工艺制作,具有双缓冲器输入结构,其引脚排列如图所示,DAC0832各引脚功能说明:DI0~DI7:转换数据输入端。CS:片选信号输入端,低电平有效。ILE:数据锁存允许信号输入端,高电平有效。WR1:第一写信号输入端,低电平有效,Xfer:数据传送控制信号输入端,低电平有效。WR2:第二写信号输入端,低电平有效。Iout1:电流输出1端,当数据全为1时,输出电流最大
2、;当数据全为0时,输出电流最小。Iout2:电流输出2端。DAC0832具有:Iout1+Iout2=常数的特性。Rfb:反馈电阻端。Vref:基准电压端,是外加的高精度电压源,它与芯片内的电阻网络相连接,该电压范围为:-10V~+10V。VCC和GND:芯片的电源端和地端。DAC0832内部有两个寄存器,而这两个寄存器的控制信号有五个,输入寄存器由ILE、CS、WR1控制,DAC寄存器由WR2、Xref控制,用软件指令控制这五个控制端可实现三种工作方式:直通方式、单缓冲方式、双缓冲方式。直通方式是将两个寄存器的五个控制端预先置为有效,两个寄存器都开通只要有数字信号输入
3、就立即进入D/A转换。单缓冲方式使DAC0832的两个输入寄存器中有一个处于直通方式,另一个处于受控方式,可以将WR2和Xfer相连在接到地上,并把WR1接到80C51的WR上,ILE接高电平,CS接高位地址或地址译码的输出端上。双缓冲方式把DAC0832的输入寄存器和DAC寄存器都接成受控方式,这种方式可用于多路模拟量要求同时输出的情况下。三种工作方式区别是:直通方式不需要选通,直接D/A转换;单缓冲方式一次选通;双缓冲方式二次选通。三、实验步骤1、用8P数据线连接单片机最小应用系统1模块的P0口到D/A转换模块的DI0~DI7口,用二号导线分别连接单片机最小应用系统
4、1模块的P2.0、WR到D/A转换模块的P2.0、WR,连接D/A转换模块的Vref口到-5V口,D/A转换模块的OUT接示波器探头。2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统1模块的锁紧插座中,请注意仿真器的方向:缺口朝上。3、打开KeiluVision2仿真软件,首先建立本实验的项目文件,接着添加“TH14_DAC0832.ASM”源程序,进行编译,直到编译无误。4、打开模块电源和总电源开关,点击开始调试按钮,点击RUN按钮运行程序。5、实验现象:观察示波器测量输出正弦波的周期和幅度,调节D/A转换模块的电位器可改变正弦波的幅度。四、实验
5、流程图及源程序1.流程图结束开始延时等待转换启动D/A转换转换结束输出延时2.源程序DAC0832EQU0FEFFHORG8000HAJMPSTARTORG8100HSTART:MOVSP,#60HMOVR0,#0;定义指向正弦DAC数据的指针,因为有361个数据MOVR1,#0;所以用了R0和R1两个寄寸器LOOP:MOVA,R0MOVDPTR,#SINE_DATACJNER1,#1,LOW_TABINCDPH;判断指针的高位字节R1是否为1。如果是则DPH加1LOW_TAB:MOVCA,@A+DPTR;取出正弦波DAC的数据MOVDPTR,#DAC0832MOVX@
6、DPTR,A;启动D/A转换INCR0;指针底八位加1处理CJNER1,#1,INC_LOWCJNER0,#105,INC_OKMOVR0,#0;如果已经取完数据并输出,则重新设置指针MOVR1,#0SJMPINC_OKINC_LOW:CJNER0,#0,INC_OK;判断是否要进位MOVR1,#1INC_OK:ACALLDELAYAJMPLOOP;**********************************************;通过设置延时时间的长短来改变锯齿波的周期;********************************************
7、**DELAY:MOVR7,#5;改变数值可以改变正弦波的频率DJNZR7,$RET;******************************;正弦波数据表,8位DAC的数据;******************************SINE_DATA:DB128,130,132,135,137,139,141,144,146,148DB150,152,155,157,159,161,163,165,168,170DB172,174,176,178,180,182,184,186,188,190DB192,194,196,198,2