微机原理及应用实验报告
班级:机械0606班
姓名:范东生
学号:0801060624
中南大学
机电工程学院精密测控实验室
实验一单片机仿真开发机操作和MCS-51指令系统应用
一.实验目的
1、熟悉MCS-51单片机仿真开发机和开发调试软件的操作使用和调整;
2、学会编写和输入汇编语言源程序、对输入的源程序进行汇编;
3、掌握程序的调试和运行的各种方法。
二.实验设备
台式微型计算机PⅢ500
MCS-51仿真开发机H51/S
三.实验步骤
1.开机(台式电脑),双击桌面上的图标WAVE运行WAVE程序进入伟福开发环境。
2.设置仿真器
2.1点击主菜单上的仿真器下仿真器设置,出现窗口
选择仿真器为 H51/S,仿真头为POD-H8X5X,选择CPU为8031,如上图所示。
2.2点击语言,出现窗口,设置为如下所示。
设置好后点击按钮“好”即可。
3.建立你的新程序
选择菜单【文件| 新建文件】功能
出现一个名位NONAME1的源程序窗口,在此窗口输入你的源程序
4.保存你的程序
选择【文件|保存文件】或【文件|另存为】功能
给出文件所要保存的位置,例如D:\STUDENT给出文件名EX1.ASM,保存文件。
注意:*请每个同学在D盘上建立自己的文件夹
*文件名一定给扩展名.ASM
5.如果已编好程序存在自己的U盘中,可以先复制到D盘上,在选择【文件|打开】功能打
开自己的源程序即可。
6.编译程序
选择菜单【项目|编译】功能或按编译快捷图标或F9键,编译你的程序。
在编译过程中,如果有错可以在信息窗口中显示出来,双击错误信息,可以在源程序中定位所在行。纠错后,再次编译直到没有错误。
7调试程序
7.1 设置PC
用鼠标指着源程序的第一条有效指令,点击右键,选择“设置PC”
7.2单步调试
选择【执行|跟踪】功能或按跟踪快捷图标或按F7 进行单步跟踪调试程序
单步跟踪就一条指令一条指令地执行程序,若有子程序调用,也会跟踪到子程序中去。
选择【执行|单步】功能或按单步快捷图标或按F8 进行单步调试程序,可以全速执行子程序(把子程序作为一步执行完),而不会跟踪到子程序中。
在单步调试中,可以通过REG,SFR,DATA来观察相应寄存器,特殊功能寄存器,和内部RAM单元的内容。
单步执行下程序,至DJNZ R2,A1行。观察并记录指令运行结果
ORG 1000H
AJMP MAIN
ORG 1030H
MAIN: MOV R0,#20H ;(R0)= 20
MOV R2,#0FH ;(R2)= 0F
MOV A,#00H
A1: MOV @R0,A ; (20H)=00H
INC R0 ; (R0)= 21
INC A ;(A)= 01
DJNZ R2,A1
MOV R0,#20H
MOV DPTR,#7000H
MOV R2,#0FH汇编语言如何编程
A2: MOV A,@R0
MOVX @DPTR,A
INC R0
INC DPTR
DJNZ R2,A2
MOV R0,#0A0H
MOV DPTR,#7000H
MOV R2,#0FH
A3: MOVX A,@DPTR
MOVX @R0,A
INC R0
INC DPTR
DJNZ R2,A3
DO: LJMP DO
7.3利用“执行到光标处”功能进行调试
将光标移到想要暂停的地方,MOV R0,#20H所在行,选择菜单【执行|执行到光标处】或F4键或鼠标右键弹出菜单“执行到光标处”功能,程序快速执行到光标所在行。
观察运行情况,并记录,此时
R0 R2 A 20H 21H 22H 23H 24H 25H AF 0F 0E 00 01 02 03 04 05
26H 27H 28H 29H 2AH 2BH 2CH 2DH 2EH
06 07 08 09 0A 0B 0C 0D 0E
7.4利用断点进行调试
设置断点:将鼠标移到源程序窗口的灰区,鼠标变为“手指圈”,单击左键设置断点,或击右键选“设置/取消断点”功能或用Ctrl+F8设置断点。断点设置好后,就可以用全速执行的功能,当程序执行到断点时,会暂停下来,可以观察程序中各变量的值,判断程序是否正确。在MOV R0,#0A0H行设置断点,全速执行,暂停后观察并记录以下单元内容R0 DPL 7000H 7001H 7002H 7003H 7004H 7005H 7006H 2F 0F 00 01 02 03 04 05 06 7007H 7008H 7009H 700AH 700BH 700CH 700DH 700EH
07 08 09 0A 0B 0C 0D 0E
8.综合运用各种调试方法对源程序进行调试。
实验二软件程序设计
1.实验目的:
1、掌握MCS-51单片机指令系统及用汇编语言编程技巧;
2、了解和熟悉用MCS-51单片机仿真开发机调试程序的方法。
2.实验内容:
1、编写排序程序并上机调试通过。
已知8031内部RAM60H~69H单元中,依次存放了
FFH,99H,77H,CCH,33H,DDH,88H,BBH,44H,EEH,它们均为无符号数,编程将它们按递减次序排序,即最大数放在60H中,最小数放在69H中。
2、编写多字节加法程序并上机调试通过。
8031内部RAM20H~22H单元中,存放了3字节被加数(低字节在前),在2AH~2CH单元中存放3字节加数(低字节在前),求两数之和,并将结果存入以20H为起始地址的区域中(低字节在前)。
3.实验设备名称、型号:
台式微型计算机PⅢ500
MCS-51仿真开发机H51/S
4.画出软件程序流程图:
实验2-1流程图实验2-2流程图
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论