微机实验步骤学生.doc

上传人:文库蛋蛋多 文档编号:2883390 上传时间:2023-03-01 格式:DOC 页数:15 大小:317KB
返回 下载 相关 举报
微机实验步骤学生.doc_第1页
第1页 / 共15页
微机实验步骤学生.doc_第2页
第2页 / 共15页
微机实验步骤学生.doc_第3页
第3页 / 共15页
微机实验步骤学生.doc_第4页
第4页 / 共15页
微机实验步骤学生.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《微机实验步骤学生.doc》由会员分享,可在线阅读,更多相关《微机实验步骤学生.doc(15页珍藏版)》请在三一办公上搜索。

1、实验一 分支程序设计与调试(2学时)1、实验内容:a、设计统计一门课的成绩及多字节十进制加法程序b、设计数据块移动及有序表的折半查找程序c、调试程序,得到正确结果,掌握分支程序设计方法2、基本要求:a、熟练掌握指令系统b、掌握分支与循环程序的设计方法和过程c、熟练掌握汇编语言程序设计的格式、一般过程、调试过程和方法3、软件实验步骤:DOS系统C:,C:下输入EDIT变成C:EDIT,回车;按Esc打开编辑界面输入程序;输入完成后,按Alt激活菜单,用、选择SAVE保存文件,注意:必须是.ASM后缀,如果有误打开源文件后选择SAVE AS另存,保存完好后按Alt激活菜单,选择EXIT退出编辑界面

2、;C:下输入MASM变成C:MASM,回车,在第一个要求输入的地方输入文件名,不加后缀,有错误记录并改正(若错误过多,一般是段定义的问题),直到没有错误,则生成.OBJ文件,程序调试;C:下输入LINK变成C: LINK,回车,在第一个要求输入的地方输入文件名,则生成.EXE文件;调用DEBUG命令查看程序内容等C:下输入文件名,执行文件,一般不执行;C:下输入DIR/P/W,在屏幕上显示出*.ASM.*.OBJ,*.EXE三个文件;经老师验收(随机调看程序)可以结束该实验。实验报告填写内容实验类型: 设计型 一、实验目的(5)1、熟练掌握指令系统,并能在设计程序的过程中熟练应用各个指令;2、

3、掌握分支与循环程序的设计方法和过程,加深对分支与循环结构的理解;3、熟练掌握汇编语言程序设计的格式、一般过程、调试过程和方法。二、准备报告(45)1、实验方案概述(10)【实验内容及要求】1)实验内容:a、统计一门课的成绩中优、良、中、及格、不及格各多少人,并计算平均成绩;b、多字节十进制数的被加数放在A单元,加数放在B单元,求和后结果放在A单元;c、调试程序,得到正确结果,掌握分支程序设计方法2)基本要求:a、熟练掌握指令系统b、掌握分支与循环程序的设计方法和过程c、能熟练调试程序,并得到正确结果,【基本原理】1)根据程序设计的一般步骤进行程序的设计,在编程过程中熟练应用指令系统常用的指令完

4、成编程任务;在程序设计过程中进一步熟悉指令系统的特点和用法;2)根据分支循环结构设计的时候要注意的要点:a、循环体和循环次数的确定,b、判断条件和分支的确定,根据实验要求设计出相应的分支结构和循环结构;3)汇编程序的建立和调试过程,及常用的DEBUG命令的使用方法。【设计思想】1)统计一门课的成绩中有:优、良、中、及格、不及格中的人数,循环体判断每个学生的成绩属于哪一个范围,循环次数学生人数,判断条件人数是否结束,分支学生的成绩属于:优、良、中、及格、不及格中的那一类;2)多字节十进制加法程序,循环体每个字节的加法,循环次数十进制数的位数,判断条件十进制是否全部加完。2、设计方案(35)【电路

5、设计】无【程序流程图】实验1-1 统计一门课程的成绩流程图(20) 实验1-2 多位十进制加法流程图(15)三、实验设备(5)装有DOS系统和MASM5.0的微机一台或TDN86/88微机原理实验教学系统一台。四、实验内容(45)1、程序代码(加注解)(25)实验1-1 统计一门课程的成绩程序(15)DATA SEGMENTSUTDENTNUM EQU 50SCORE DB 88,85,75,72,58,69,LT60 DB 0GE60 DB 0GE70 DB 0GE80 DB 0GE90 DB 0DATA ENDSSTACK SEGMENTDW 20 DUP(?)STACK ENDSCODE

6、 SEGMENTASSUME CS:CODE, DS:DATA,SS:STACKSTART: PUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV CX,SUTDENTNUMLEA BX,SOCREB60: MOV AL,BXCMP AL,60JAE M60LEA SI,LT60INC BYTE PTR SIJMP NEXTM60: CMP AL,70JAE M70LEA SI,GE60INC BYTE PTR SIJMP NEXTM70: CMP AL,80JAE M80LEA SI,GE70INC BYTE P

7、TR SIJMP NEXTM80: CMP AL,90JAE M90LEA SI,GE80INC BYTE PTR SIJMP NEXTM90: LEA SI,GE90INC BYTE PTR SINEXT: INC BXLOOP B60RETCODE ENDSEND START;定义数据段;定义学生人数;定义学生成绩;存放不及格人数;存放及格人数;存放中人数;存放良人数;存放优人数;数据段定义结束;定义堆栈段;定义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;DS:00入栈;AXDATA数据段;DSDATA数据段;AXSTACK堆栈段;DSSTACK堆栈段;循环次数CX学生

8、人数;BX指向成绩的首地址;AL中取一个学生的成绩;成绩与60相比较;大于等于60转移到M60;否则SI取LT60地址;不及格人数LT60+1;无条件转移到NEXT处;成绩与70相比较;大于等于70转移到M70;否则SI取GE60地址;及格人数GE60+1;无条件转移到NEXT处;成绩与80相比较;大于等于80转移到M80;否则SI取GE70地址;中人数GE70+1;无条件转移到NEXT处;成绩与90相比较;大于等于90转移到M90;否则SI取GE80地址;良人数GE80+1;无条件转移到NEXT处;SI取GE90地址;优人数GE90+1;BX指向下一个学生成绩;CX-10循环到B60;结束后

9、返回;数据段结束;程序结束实验1-2 多位十进制加法程序(10)DATA SEGMENTDECIMALA DT 3245763299DECIMALB DT 4891047327DATA ENDSSTACK SEGMENTDW 20 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA,SS:STACKSTART: PUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV SI,OFFSET DECIMALAMOV DI,OFFSET DECIMALBMOV CX,5CL

10、CLOOP1:MOV AL,SIADC AL,DIDAAMOV SI,ALINC SIINC DILOOP LOOP1RETCODE ENDSEND START;定义数据段;定义被加数A;定义加数B;数据段定义结束;定义堆栈段;定义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;DS:00入栈;AXDATA数据段;DSDATA数据段;AXSTACK堆栈段;DSSTACK堆栈段;SI指向被加数A的首地址;DI指向加数B的首地址;循环次数CX10;进位标志CF清0;AL存放被加数SI;AL加加数DI,带进位位加法;BCD码加法调整;调整后的结果存放在A中;指向A下一字节;指向B下一

11、字节;CX0循环到LOOP1;结束返回;数据段结束;程序结束2、实验数据记录与结果分析(10)(实验过程中要认真记录数据和实验中出现的问题)记录内容:1)出错的地方和错误类型;2)出错的原因及改正方法;3、实验总结(10)总结内容:1)收获有哪些,对分支结构和循环结构的理解有哪些进步;2)如何在将来的设计过程中避免错误的发生;3)MASM5.0汇编过程及调试程序;4)实际操作与理论的差距有哪些?实验二 循环程序设计与调试(2学时)1、实验内容:a、设计计算Y1+2+3+100的程序b、求数据块求最大值、最小值程序c、调试程序,得到正确结果,掌握循环程序设计方法2、基本要求:a、熟练掌握指令系统

12、b、掌握分支与循环程序的设计方法和过程c、调试程序,得到正确结果。3、软件实验步骤:DOS系统C:,C:下输入EDIT变成C:EDIT,回车;按Esc打开编辑界面输入程序;输入完成后,按Alt激活菜单,用、选择SAVE保存文件,注意:必须是.ASM后缀,如果有误打开源文件后选择SAVE AS另存,保存完好后按Alt激活菜单,选择EXIT退出编辑界面;C:下输入MASM变成C:MASM,回车,在第一个要求输入的地方输入文件名,不加后缀,有错误记录并改正(若错误过多,一般是段定义的问题),直到没有错误,则生成.OBJ文件,程序调试;C:下输入LINK变成C: LINK,回车,在第一个要求输入的地方

13、输入文件名,则生成.EXE文件;调用DEBUG命令查看程序内容等C:下输入文件名,执行文件,一般不执行;C:下输入DIR/P/W,在屏幕上显示出*.ASM.*.OBJ,*.EXE三个文件;经老师验收(随机调看程序)可以结束该实验。实验报告填写内容实验类型: 设计型 一、实验目的(5)1、进一步熟悉指令系统,并能在设计程序的过程中熟练应用各个指令;2、掌握分支与循环程序的设计方法和过程,进一步加深对分支与循环结构的理解;3、进一步加深对汇编语言程序设计的格式、一般过程、调试过程和方法的掌握。二、准备报告(50)1、实验方案概述(10)【实验内容及要求】1)实验内容:a、设计程序完成Y1+2+3+

14、100的计算;b、求出数据块求最大值、最小值;c、调试程序,得到正确结果,掌握循环程序设计方法2)基本要求:a、熟练掌握指令系统b、掌握分支与循环程序的设计方法和过程c、能熟练调试程序,并得到正确结果,【基本原理】1)根据程序设计的一般步骤进行程序的设计,在编程过程中熟练应用指令系统常用的指令完成编程任务;在程序设计过程中进一步熟悉指令系统的特点和用法;2)根据分支循环结构设计的时候要注意的要点:a、循环体和循环次数的确定,b、判断条件和分支的确定,根据实验要求设计出相应的分支结构和循环结构;3)汇编程序的建立和调试过程,及常用的DEBUG命令的使用方法。【设计思想】1)完成Y1+2+3+10

15、0的计算,循环体自然数求和,循环次数100,判断条件是否到了100;2)求出数据块求最大值、最小值,循环体数据比较求较大值、最小值,最大值存放在BH中,最小值存放在BL中,循环次数数据个数-1,判断条件是否是最后一个数据;2、设计方案(40)【电路设计】无【程序流程图】实验2-1 求Y1-2+3+100的流程图(20) 实验2-2 求数据块最大值、最小值流程图(20)三、实验设备(5)装有DOS系统和MASM5.0的微机一台或TDN86/88微机原理实验教学系统一台。四、实验内容(40)1、程序代码(加注解)实验2-1 求Y1+2+3+100的程序(10)DATA SEGMENTMAX DW

16、100SUM DW ?DATA ENDSSTACK SEGMENTDW 20 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA,SS:STACKSTART: PUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,0MOV CX,MAXMOV BX,1LOOP1:ADD AX,BXINC BXLOOP LOOP1RETCODE ENDSEND START;定义数据段;定义循环次数为100;定义结果存放地方;数据段定义结束;定义堆栈段;定义20字的空间;堆栈段

17、定义结束;定义数据段;段寻址伪指令指示各段;DS:00入栈;AXDATA数据段;DSDATA数据段;AXSTACK堆栈段;DSSTACK堆栈段;AX清0;CX设定为循环次数100;BX为第一个数1;AX+BXAX(存放结果),;BX+1;CX0转移到LOOP1;程序返回;数据段结束;程序结束实验2-2 求出数据块求最大值、最小值程序(10)DATA SEGMENT NUM EQU 16 NUMBER DB 16,25,32,83DATA ENDSSTACK SEGMENT DW 20H DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:

18、STACKSTART:PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV SI,OFFSET NUMBER MOV CX,NUM MOV BH,SI MOV BL,BHLOOP1:INC SI MOV AL,SI CMP AL,BH JG L1 CMP AL,BL JL L2 JMP L3 L1:MOV BH,AL JMP L3 L2:MOV BL,AL L3:LOOP LOOP1 RETCODE ENDS END START;定义数据段;定义数据个数;定义数据块内容;数据段定义结束;定义堆栈段;定

19、义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;DS:00入栈;AXDATA数据段;DSDATA数据段;AXSTACK堆栈段;DSSTACK堆栈段;SI指向数据块的首地址;循环次数CXNUM;BH存放第一个数;BL存放第一个数;SI+1,指向下一个数据;AL存放下一个数;比较AL与BH;大于时转移到L1;否则比较Al与BL;小于转移到L2;无条件转移到L3;将AL的内容给BH;无条件转移到L3;将AL的内容给BL;CX0循环到LOOP1;程序返回;数据段结束;程序结束2、实验数据记录与结果分析(10)(实验过程中要认真记录数据和实验中出现的问题)记录内容:1)出错的地方和错误

20、类型;2)出错的原因及改正方法;3、实验总结(10)总结内容:1)收获有哪些,对分支结构和循环结构的理解有哪些进步;2)如何在将来的设计过程中避免错误的发生;3)MASM5.0汇编过程及调试程序;4)实际操作与理论的差距有哪些?实验三 8255并行接口实验(2学时)1、实验内容:a、熟悉微机原理实验箱的使用b、理解8位微处理器扩展接口方法和原理c、能使用实验箱扩展总线,按不同地址范围扩展并行接口8255 A d、编写程序实现:通过8255 A用发光二极管显示出开关状态2、基本要求:a、理解8位微处理器扩展接口方法和原理b、能使用实验箱扩展总线,按不同地址范围扩展接口器件c、编写程序实现实验内容

21、的要求3、硬件实验步骤开计算机进入DOS系统并将实验箱打开C: 下输入D86,选择串口1,如果没有WELCOME信号,按F8退出,重新输入D86,选择串口2,如果都没有反映,则换机或与其他同学和用一个;按F1打开编辑界面输入程序输入完成后,按F10激活菜单,用、选择SAVE保存文件,注意:必须是.ASM后缀,如果有误打开源文件后选择SAVE AS另存,保存完好后按F10激活菜单,选择EXIT退出编辑界面;按F2输入文件名(不加后缀),记录并改正调试到没有错误,生成.OBJ文件;按F3输入文件名(不加后缀),连接文件生成.EXE文件;按要求设计电路并连接,按F5输入文件名*.EXE, CS:00

22、00,IP:2000输入G0000:2000运行程序,查看电路是否能满足要求,有问题Ctrl+C终止程序,关闭实验箱,修改电路,重复上一步骤直至满足要求。经老师验收(查看电路情况)可以结束该实验。实验报告填写内容实验类型: 设计型 一、实验目的(5)1、学习并掌握8255A并行接口方式0及其应用;2、学习在系统接口实验单元上构造实验电路;3、进一步加深对8255A并行接口的内部结构、引脚、方式控制字、端口地址等的理解。二、准备报告(55)1、实验方案概述(10)【实验内容及要求】1)实验内容:a、熟悉微机原理实验箱的使用方法,理解8位微处理器扩展接口方法和原理b、能使用实验箱扩展总线,按不同地

23、址范围扩展并行接口8255 Ac、编写程序实现:通过8255 A用发光二极管显示出开关状态2)基本要求:使用8255A的A组、B组均工作与方式0,端口B工作于输入方式,端口A工作于输出方式,用一组开关信号接入端口B,端口A输出线接至一组发光二极管上,对8255A编程,使得发光二极管可以反映开关的状态。【基本原理】1)充分认识接口的作用、重要性、地位,加深对并行接口的理解;2)深入学习8255A的内部结构、引脚、方式控制字、端口地址、初始化方法等;3)进一步加深对汇编程序的建立和调试过程,及常用的DEBUG命令的使用方法。【设计思想】1)根据题目的要求进行接线,端口A接发光二极管,端口B接开关信

24、号;2)根据要求写出方式控制字为:82H,确定端口A、B、C、控制的地址分别为:60H、61H、62H、63H;3)然后画出流程图,并按流程图编写程序实现对8255A的初始化及对端口A和端口B的控制。2、设计方案(45)【电路设计】(25)【程序流程图】(20)实验3 8255A方式0实验流程图三、实验设备(5)1、TDN86/88微机原理实验教学系统一台;2、四芯排线2根,八芯排1根;3、西安唐都科教仪器公司的16位开放式微机实验箱一个。四、实验内容(35)1、程序代码(加注解)实验3 8255A方式0实验程序(15)STACK SEGMENTDW 20 DUP(?)STACK ENDSCO

25、DE SEGMENTASSUME CS:CODE,SS:STACKSTART: MOV AX,STACKMOV SS,AXMOV AL,82HOUT 63H,ALLOOP1:IN AL,61HOUT 60H,ALJMP LOOP1CODE ENDSEND START;定义堆栈段;定义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;AXSTACK堆栈段;DSSTACK堆栈段;方式控制字给Al;方式控制字写入控制端口;从B口读入一个数据;将B口内容从A口输出,;无条件转移到LOOP1处;数据段结束;程序结束2、实验数据记录与结果分析(10)(实验过程中要认真记录数据和实验中出现的问

26、题)记录内容:1)出错的地方和错误类型;2)出错的原因及改正方法(包括电路、软件);3、实验总结(10)总结内容:1)收获有哪些,对8255A的内部结构、引脚、方式控制字、端口地址、初始化方法的理解有哪些进步;2)如何在将来的设计过程中避免错误的发生包括软硬件两方面;3)进一步熟悉MASM5.0汇编过程及调试方法;4)实际操作连线与理论的差距有哪些?实验四 8253定时器计数器接口实验(2学时)1、实验内容:a、利用实验箱上的8253A,设计计数器,能对通过开关产生的计数脉冲进行计数b、设计8253A不同工作方式时的计数过程c、编写程序,实现相应功能d、掌握8253计数器各种工作方式的使用2、

27、基本要求:a、理解8253A计数器的使用和原理b、掌握8253A的初始化编程和各种工作方式的使用c、编写程序实现实验内容的要求3、硬件实验步骤开计算机进入DOS系统并将实验箱打开C: 下输入D86,选择串口1,如果没有WELCOME信号,按F8退出,重新输入D86,选择串口2,如果都没有反映,则换机或与其他同学和用一个;按F1打开编辑界面输入程序输入完成后,按F10激活菜单,用、选择SAVE保存文件,注意:必须是.ASM后缀,如果有误打开源文件后选择SAVE AS另存,保存完好后按F10激活菜单,选择EXIT退出编辑界面;按F2输入文件名(不加后缀),记录并改正调试到没有错误,生成.OBJ文件

28、;按F3输入文件名(不加后缀),连接文件生成.EXE文件;按要求设计电路并连接,按F5输入文件名*.EXE, CS:0000,IP:2000输入E0000:003C回车,输入12 20 00 00回车输入G0000:2000运行程序,查看电路是否能满足要求,有问题Ctrl+C终止程序,关闭实验箱,修改电路,重复上一步骤直至满足要求。经老师验收(查看电路情况)可以结束该实验。实验报告填写内容实验类型: 设计型 一、实验目的(5)1、熟悉8253在系统中的典型接法,进一步学习在系统接口实验单元上构造实验电路2、掌握8253作为计数器的工作方式和应用编程;3、进一步加深对8253并行接口的内部结构、

29、引脚、方式控制字、端口地址等的理解。二、准备报告(45)1、实验方案概述(10)【实验内容及要求】1)实验内容:a、利用实验箱上的8253A,设计计数器,能对通过开关产生的计数脉冲进行计数;b、设计8253A不同工作方式时的计数过程;c、掌握8253计数器各种工作方式的使用,并编写程序,实现相应功能;2)基本要求:a、理解8253A计数器的使用和原理b、掌握8253A的初始化编程和各种工作方式的使用c、编写程序实现:使用8253的2号通道为方式0,用于事件计数,当计数值为5,且计数完成时,发出中断请求信号,在显示器上显示“M”。【基本原理】1)充分认识接口的作用、重要性、地位,加深对并行接口8

30、255A的理解和应用;2)深入学习8253的内部结构、引脚、方式控制字、端口地址、初始化方法等;3)进一步加深对汇编程序的建立和调试过程,及常用的DEBUG命令的使用方法。【设计思想】1)根据题目的要求进行接线并画出电路图,8253通道2方式0计数显示“M”;2)根据要求写出方式控制字为:90H,确定计数器0、计数器1、计数器2、控制寄存器的地址分别为:40H、41H、42H、43H;3)然后画出流程图,并按流程图编写程序实现对8253的初始化及对通道2的控制。2、设计方案(35)【电路设计】(15)【程序流程图】(20)实验4 8253通道2方式0计数实验流程图三、实验设备(5)1、TDN8

31、6/88微机原理实验教学系统一台;2、2芯导线3根;3、西安唐都科教仪器公司的16位开放式微机实验箱一个。四、实验内容(45)1、程序代码(加注解)(25)实验4 253通道2方式0计数实验程序STACK SEGMENTDW 20 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: IN AL,21HAND AL,7FHOUT 21H,ALMOV AX,STACKMOV SS,AXMOV AL,90HOUT 43H,ALLOOP1:MOV AL,05HOUT 42H,ALHLTSTIJMP LOOP1MOV AX,014DHINT

32、 10HMOV AX,0120HINT 10HMOV AL,20HOUT 20H,ALIRETCODE ENDSEND START;定义堆栈段;定义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;从8259中读入中断号;最高位清0;清0后重新输入到8259;AXSTACK堆栈段;SSSTACK堆栈段;方式控制字给AL;方式控制字写入控制端口;AL内存放计数次数;将计数次数传送到计数器2;暂停;开中断;有中断计数5次后调用IRQ7;将AL中的内容“M”从屏幕上显示出来;调用显示器服务中断;将AL中的内容“ ”从屏幕上显示出来;调用显示器服务中断;将程序结束服务中断号20H写入AL

33、;执行20H号中断;中断返回;数据段结束;程序结束2、实验数据记录与结果分析(10)(实验过程中要认真记录数据和实验中出现的问题)记录内容:1)出错的地方和错误类型;2)出错的原因及改正方法(包括电路、软件);3、实验总结(10)总结内容:1)收获有哪些,对8253的内部结构、引脚、方式控制字、端口地址、初始化方法的理解有哪些进步;2)如何在将来的设计过程中避免错误的发生包括软硬件两方面;3)进一步熟悉MASM5.0汇编过程及调试方法;4)实际操作连线与理论的差距有哪些?实验五 A/D、D/A转换接口实验(综合实验,2学时)1、实验内容:a、理解A/D、DA转换器的使用和原理b、用ADC080

34、9构成一个数据采集系统,编程采集数据,并用数字显示当前的采集值,采集数据要有相应的滤波手段c、用DAC083实现D/A转换,产生锯齿波、梯形波等d、编写程序,实现相应功能2、基本要求:a、理解AD转换器的使用和原理b、理解DA转换器的使用和原理c、编写程序实现实验内容的要求2、硬件实验步骤开计算机进入DOS系统并将实验箱打开C: 下输入D86,选择串口1,如果没有WELCOME信号,按F8退出,重新输入D86,选择串口2,如果都没有反映,则换机或与其他同学和用一个;按F1打开编辑界面输入程序输入完成后,按F10激活菜单,用、选择SAVE保存文件,注意:必须是.ASM后缀,如果有误打开源文件后选

35、择SAVE AS另存,保存完好后按F10激活菜单,选择EXIT退出编辑界面;按F2输入文件名(不加后缀),记录并改正调试到没有错误,生成.OBJ文件;按F3输入文件名(不加后缀),连接文件生成.EXE文件;按要求设计电路并连接,按F5输入文件名*.EXE, CS:0000,IP:2000按F7_Wave进入PC示波器功能按F1运行程序,CS:0000,IP:2000,观察DA输出的波形,查看波形是否能满足要求,有问题F2终止示波器,按F8退出,修改程序,重复上一步骤直至满足要求。经老师验收(查看示波器情况)可以结束该实验。实验报告填写内容实验类型: 综合型 一、实验目的(5)1、学习掌握数/模

36、转换的基本原理,掌握DAC0832芯片的使用方法;2、进一步学习在系统接口实验单元上构造实验电路;3、用DAC083实现D/A转换,产生锯齿波、梯形波等。二、准备报告(50)1、实验方案概述(10)【实验内容及要求】1)实验内容:a、理解A/D、DA转换器的使用和原理b、用DAC083实现D/A转换,产生锯齿波、梯形波等c、编写程序,实现相应功能。2)基本要求:a、理解D/A转换器的使用和原理;b、编写程序实现:将DAC0832芯片与系统总线相连,实验锯齿波、梯形波的输出,并将输出连到显示器上观察波形。【基本原理】1)充分认识理解A/D、DA转换器的使用和原理,加深对DAC0832芯片的认识;

37、2)深入学习DAC0832的引脚、功能;3)通过编程用DAC083实现D/A转换,产生锯齿波、梯形波,在编程过程中进一步加深对汇编程序的建立和调试过程,及常用的DEBUG命令的使用方法。【设计思想】1)根据题目的要求进行接线并画出电路图,用DAC0832将输入的数字信号转换成模拟信号在显示器上显示出来;2)根据要求画出流程图,并按流程图编写程序实现用DAC0832将输入的数字信号转换成锯齿波、梯形波在显示器上显示出来。2、设计方案(40)【电路设计】(20)【程序流程图】实验5-1 DAC0832锯齿波发生实验流程图(10) 实验5-2 DAC0832脉冲波发生实验流程图(10)三、实验设备(

38、5)1、TDN86/88微机原理实验教学系统一台;2、导线3根;3、西安唐都科教仪器公司的16位开放式微机实验箱一个。四、实验内容(40)1、程序代码(加注解)(20)实验5-1 DAC0832锯齿波发生实验程序(10)STACK SEGMENTDW 20 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: MOV AL,00HA1:OUT 00H,ALCALL DALLYINC ALCMP AL,7FHJNC STARTJMP A1DALLY:PUSH CXPUSH AXMOV CX,0001HA2:MOV AX,0200HA3

39、:DEC AXJNZ A3LOOP A2POP AXPOP CXRETCODE ENDSEND START;定义堆栈段;定义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;AL中存放0;将AL中的内容输送到DAC0832中;调用DALLY延时子程序;AL内容+1;AL内容与7FH相比较;没有借位时从START重新开始;有借位时无条件转移到A1;延时程序,CX入栈;AX入栈;CX1;AX200H;AX-1;AX0跳转到A3;AX0跳转到A2;弹出AX;弹出CX;返回;数据段结束;程序结束实验5-2 DAC0832脉冲波发生实验程序(10)STACK SEGMENTDW 20 DU

40、P(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: MOV AL,00HA1:OUT 00H,ALCALL DALLYMOV AL,7FHOUT 00H,AL CALL DALLY JMP STARTDALLY:PUSH CXPUSH AXMOV CX,0001HA2:MOV AX,056CHA3:DEC AXJNZ A3LOOP A2POP AXPOP CXRETCODE ENDSEND START;定义堆栈段;定义20字的空间;堆栈段定义结束;定义数据段;段寻址伪指令指示各段;AL中存放0;将AL中的内容输送到DAC0832中;调

41、用DALLY延时子程序;AL中存放7FH;将AL中的内容输送到DAC0832中;调用DALLY延时子程序;无条件转移到A1;延时程序,CX入栈;AX入栈;CX1;AX200H;AX-1;AX0跳转到A3;AX0跳转到A2;弹出AX;弹出CX;返回;数据段结束;程序结束2、实验数据记录与结果分析(10)(实验过程中要认真记录数据和实验中出现的问题)记录内容:1)出错的地方和错误类型;2)出错的原因及改正方法(包括电路、软件);3、实验总结(10)总结内容:1)收获有哪些,对DAC0832的引脚、数/模转换方法的理解有哪些进步;2)如何在将来的设计过程中避免错误的发生包括软硬件两方面;3)进一步熟悉MASM5.0汇编过程及调试方法;4)实际操作连线与理论的差距有哪些?

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号