微机第八次实验报告.docx

微机第八次实验报告.docx

ID:61429185

大小:3.11 MB

页数:10页

时间:2021-01-29

微机第八次实验报告.docx_第1页
微机第八次实验报告.docx_第2页
微机第八次实验报告.docx_第3页
微机第八次实验报告.docx_第4页
微机第八次实验报告.docx_第5页
资源描述:

《微机第八次实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、东南大学《微机实验及课程设计》实验报告实验八数模与模数转换姓名:学号:专业:实验室:电工电子实验中心416室实验时间:2012年05月29日报告时间:2012年06月04日评定成绩:审阅教师:一、实验目的与内容(一)实验目的:(1)了解数/模转换器的基本原理,掌握DAC0832芯片的使用方法;(2)了解模/数转换器的基本原理,掌握ADC0809芯片的使用方法。(二)实验内容:(1)DAC实验电路原理如下图,DAC0832采用单缓冲方式,具有单双极性输入端(图中的Ua、Ub)。进入DEBUG调试,输出命令(O290数据)输出数据给

2、DAC0832,用万用表测量单极性输出端Ua及双极性输出端Ub的电压,验证数字与电压之间的线性关系。(2)分别编程产生锯齿波、正弦波电压波形(从Ub输出,用示波器观察)。(3)ADC实验电路原理图如下图,通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,检查硬件是否正常,验证输入电压与转换后数字的关系。启动IN0开始转换:O0C8180;读取转换结果:I0C818。(4)编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进

3、制数)。(5)将JP3的1、2短接,使IN1处于双极性工作方式,并给IN1输入一个低频交流信号(幅度为±5V),编程采集这个信号数据并在屏幕上显示波形。二.实验基本原理(一)编程提示:(1)D/A转换8位D/A转换器DAC0832的口地址为290H,输入数据与输出电压的关系为:(UREF表示参考电压,N表示数据),这里的参考电压为PC机的+5V电压。产生锯齿波只须将输出到DAC0832的数据由0循环递增,产生正弦波可根据正弦波函数建一个下弦数字量表,取值范围为一个周期,表中数据在16个以上。(2)A/D转换ADC0809的IN0

4、口地址为298H,IN1口地址为299H。IN0单极性输入电压与转换后数字的关系为:其中Ui为输入电压,UREF为参考电压,这里的参考电压去PC机内的+5V电源电压。(二)程序流程图:锯齿波发生程序流程图正弦波发生程序流程图ADC0809数据转换和数据显示程序(主程序,显示子程序)三.方案实现与测试(一)参考程序(1)锯齿波发生程序:ioportequ0b800h-0280hio0832aequioport+290hstackssegmentstackdb100dup(?)stacksendscodesegmentassumec

5、s:code,ss:stacksmainprocfarstart:movax,stacksmovss,axmovcl,0movdx,io0832alll:moval,cloutdx,alinccl;cl加1incclincclincclincclincclincclpushdxmovah,06h;判断是否有键按下movdl,0ffhint21hpopdxjzlll;若无则转LLLmovah,4ch;返回DOSint21hmainendpcodeendsendstart(2)正弦波发生程序:datasegmentioportequ

6、0b800h-0280hio0832aequioport+290hsindb80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdhdb0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96hdb80h,66h,4eh,38h,25h,15h,09h,04hdb00h,04h,09h,15h,25h,38h,4eh,66h;正弦波数据dataendsstackssegmentstackdb100dup(?)stacksendscodesegmentassumecs:code,ds:data,

7、ss:stacksstart:movax,stacksmovss,axmovax,datamovds,axll:movsi,offsetsin;置正弦波数据的偏移地址为SImovbh,32;一组输出32个数据lll:moval,[si];将数据输出到D/A转换器movdx,io0832aoutdx,almovah,06hmovdl,0ffhint21hjneexitmovcx,1delay:loopdelay;延时incsi;取下一个数据decbhjnzlll;若未取完32个数据则转llljmpllexit:movah,4ch;

8、退出int21hcodeendsendstart(3)AD参考程序1:ioportequ0b800h-0280hio0809aequioport+298hstackssegmentstackdb100dup(?)stacksendscodesegmentassu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。