微机实验ad和da转换.doc_第1页
微机实验ad和da转换.doc_第2页
微机实验ad和da转换.doc_第3页
微机实验ad和da转换.doc_第4页
微机实验ad和da转换.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机实验 08012425 东南大学微机实验及课程设计实验报告实验八 数模与模数转换姓 名: 学 号 专 业: 自动化 实 验 室: 实验时间: 2012年05月20日 报告时间: 2012年06月02日评定成绩: 审阅教师: 一. 实验目的1、了解数/模转换器的基本原理,掌握DAC0832芯片的使用方法。2、了解模/数转换器的基本原理,掌握DAC0809芯片的使用方法。二. 实验内容必做:8-1、(数模转换)DAC0832采用单缓冲方式,具有双极性输入端。分别编程产生锯齿波(参考程序1)和正弦波(参考程序2)波形,从Ub输出,用示波器观察。8-2、(模数转换)通过实验台左下角电位器RW输出05V直流电压送入ADC0809通道IN0。编程采集IN0输入的电压,在屏幕上用16进制数显示转换后的数据(参考程序3)。选做:8-3、(模数-数模转换) 在实验2的基础上,将转换后的16进制数据重新进行数模转换(增加相应的接线),从Ub输出转换后的模拟信号,用示波器比较输入IN0和输出Ub的波形。三.实验原理与接线(1)DAC 实验电路原理如图3.9-1,DAC0832 采用单缓冲方式,具有单双极性输入端(图中的Ua、Ub)。进入DEBUG 调试,输出命令(O 290 数据)输出数据给DAC0832,用万用表测量单极性输出端a 及双极性输出端b 的电压,验证数字与电压之间的线性关系。(2)分别编程产生锯齿波、正弦波电压波形(从Ub 输出,用示波器观察)。(3) ADC 实验电路原理图如图3.9-2,通过实验台左下角电位器RW1 输出05直流电压送入ADC0809通道0(IN0),利用debug 的输出命令启动/转换器,输入命令读取转换结果,检查硬件是否正常,验证输入电压与转换后数字的关系。启动IN0 开始转换: O 0C818 0;读取转换结果: I 0C818。(4) 编程采集IN0 输入的电压,在屏幕上显示出转换后的数据(用16 进制数)。(5) 将JP3 的1、2 短接,使IN1 处于双极性工作方式,并给IN1 输入一个低频交流信号(幅度为),编程采集这个信号数据并在屏幕上显示波形。接线图:DAC0832CS接290297H用示波器观察Ub脚输出DAC0809CS接29829FHRW1接IN0四.实验源程序(主要部分)和流程图源程序:8-1、(数模转换)DAC0832采用单缓冲方式,具有双极性输入端。分别编程产生锯齿波(参考程序1)和正弦波(参考程序2)波形,从Ub输出,用示波器观察。ioportequ 0b800h-0280hio0809aequ ioport+298hstacks segment stack db 100 dup (?)stacks endscode segment assume cs:code,ss:stacksmain proc farstart:mov ax,stacksmov ss,axmov dx,io0809a ;启动A/D转换器out dx,almov cx,0ffh ;延时delay:loop delayin al,dx ;从A/D转换器输入数据mov bl,al ;将AL保存到BLmov cl,4shr al,cl ;将AL右移四位call disp ;调显示子程序显示其高四位mov al,bland al,0fhcall disp ;调显示子程序显示其低四位mov ah,02mov dl,20h ;加回车符int 21hmov dl,20hint 21hpush dxmov ah,06h ;判断是否有键按下mov dl,0ffhint 21hpop dxje start ;若没有转STARTmov ah,4ch ;退出int 21hmain endpdisp proc near ;显示子程序mov dl,alcmp dl,9 ;比较DL是否9jle ddd ;若不大于则为0-9,加30h为其ASCII码add dl,7 ;否则为A-F,再加7ddd: add dl,30h ;显示mov ah,02int 21hretdisp endpcode endsend start8-2、(模数转换)通过实验台左下角电位器RW输出05V直流电压送入ADC0809通道IN0。编程采集IN0输入的电压,在屏幕上用16进制数显示转换后的数据(参考程序3)。ioportequ 0b800h-0280hio0832aequ ioport+290hstacks segment stack db 100 dup (?)stacks endscode segment assume cs:code,ss:stacksmain proc farstart:mov ax,stacksmov ss,ax mov cl,0 mov dx,io0832alll: mov al,clout dx,alinc cl ;cl加1inc clinc clinc clinc clinc clinc clpush dxmov ah,06h ;判断是否有键按下mov dl,0ffhint 21hpop dxjz lll ;若无则转LLLmov ah,4ch ;返回DOSint 21hmain endpcode endsend start选做:8-3、(模数-数模转换) 在实验2的基础上,将转换后的16进制数据重新进行数模转换(增加相应的接线),从Ub输出转换后的模拟信号,用示波器比较输入IN0和输出Ub的波形。data segmentioportequ 0b800h-0280hio0832aequ ioport+290hsindb 80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdhdb 0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96hdb 80h,66h,4eh,38h,25h,15h,09h,04hdb 00h,04h,09h,15h,25h,38h,4eh,66h ;正弦波数据data endsstacks segment stack db 100 dup (?)stacks endscode segment assume cs:code,ds:data,ss:stacksstart:mov ax,stacksmov ss,axmov ax,datamov ds,axll:mov si,offset sin ;置正弦波数据的偏移地址为SImov bh,32 ;一组输出32个数据lll:mov al,si ;将数据输出到D/A转换器mov dx,io0832aout dx,almov ah,06hmov dl,0ffhint 21hjne exitmov cx,1delay:loop delay ;延时inc si ;取下一个数据dec bhjnz lll ;若未取完32个数据则转llljmp llexit:mov ah,4ch ;退出int 21hcode endsend start流程图: 五. 实验结果以及遇到的问题和解决办法串行通信时,构成一个字符或数据的各位按时间先后,从低位到高位一位一位地传送,占用较少的通信线,使成本降低,而且适合较远距离的传输。串行通信常作为计算机与低速外设或计算机之间传输信息用。当传输距离较远时,可采用通信线路(如电话线、无线电台等)。在使用时,发送及接收端必须具备并行-串行转换电路。串行通信包括异步通信和同步通信两种通信方式。数模和模数转换器可以通过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论