单片机应用实验指导书-实验1

上传人:zw****58 文档编号:44108084 上传时间:2018-06-08 格式:DOC 页数:5 大小:58.50KB
返回 下载 相关 举报
单片机应用实验指导书-实验1_第1页
第1页 / 共5页
单片机应用实验指导书-实验1_第2页
第2页 / 共5页
单片机应用实验指导书-实验1_第3页
第3页 / 共5页
单片机应用实验指导书-实验1_第4页
第4页 / 共5页
单片机应用实验指导书-实验1_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《单片机应用实验指导书-实验1》由会员分享,可在线阅读,更多相关《单片机应用实验指导书-实验1(5页珍藏版)》请在金锄头文库上搜索。

1、实验部分实验一 Keil 集成开发环境练习和编程调试实验名称:Keil 集成开发环境练习和编程调试 学时安排:2 学时实验类别:综合性 实验要求:必做 一、实验目的和任务1 熟悉Keil C51 集成开发环境的使用方法;2 熟悉Keil C51 集成开发环境仿真条件下调试功能的使用。二、实验原理介绍Keil 集成开发环境为我们提供了强大的学习、调试和开发工具。我们可以利用这套工具在计算机上直接进行汇编语言的编辑、连接和调试。在程序调试时,可以通过查看相关寄存器和存储器内容来判断程序的执行是否正确,通过修改相关寄存器和存储器的内容来改变程序,再执行,来修改和验证程序。三、实验设备介绍1 IBM

2、PC 机一台四、实验内容和步骤1 编写程序,完成内存中两个字节内容的交换。 建立工程文件建立工程文件。双击桌面的Keil快捷图标,进入Keil集成开发环境。点击工具栏的Project选项,在弹出的下拉菜单中选择New Project命令,建立一个新Vision2工程,为工程命名(如MyProject-1.uv2);并选择将要使用的器件的型号(Philips公司P80/87C52X2 CPU)。编写程序,加入到刚才建立工程文件中编写程序,加入到刚才建立工程文件中。在File下采用New命令以建立新文件建立新文件,单击FileSave as,在弹出对话框的“文件名”栏编辑框中输入欲使用的文件名和正

3、确扩展名(如Test1.asm),然后单击“保存”按钮;这样事先保存空白待编辑文件的好处是:Keil能自动识别关键字并标注不同颜色,提高编程效率。在Project Workspace窗口内,选中Source Group1后点击鼠标右键,在弹出菜单中选择Add files to Group “Source Group1”(向工程中添加源程序文件)命令,选择刚创建的文件,单击Add命令即可把源程序文件添加到项目把源程序文件添加到项目中。之后就可以编写程序内容,并注意及时保存文件。参考程序如下:ORG0000HLJMP MAINORG 0100HMAIN: MOV SP,#60H;SP= MOV R

4、0,#30H;R0= MOV R1,#40H;R1= MOV R0,#55H ;(30H)= MOV R1,#0AAH;(40H)= MOV A,R1 ;A= XCH A,R0 ;A= (30H)= XCH A,R1 ;A= (40H)= NOPSJMP $ ;该程序完成了 和 两字节的内容交换。 END汇编和连接:汇编和连接:选择Project下的Rebuild all target files 对工程文件进行汇编和连接:如果出错,系统会提示出错并指出出错地方和出错类型,请按照提示返回程序进行修改,直到系统提示没有错误,表明程序没有语法错误,可以进行动态调试了。动态调试的参数设置动态调试的参

5、数设置:选择Project下的Options for target Target1进行动态调试的参数设置,点击debug,再点击 Use Simulator,最后点击完成。对程序进行动态调试动态调试,查看相关寄存器、内存和外部存储器的内容。将每行程序执行后的结果写到该行程序的注释部分。重要提示重要提示:常用工具条命令有开始开始/暂停动态调试暂停动态调试,单步执行单步执行或,执行到光标处执行到光标处等。查看存储器内容查看存储器内容的方法:在存储区地址写上要查看的初始地址即可。比如:D:0000H可查看内存可查看内存RAM,X:0000H可查看外部可查看外部RAM数据,数据, C:0000H可查看

6、可查看ROM程序程序。采用堆栈法也可以完成两字节内容的交换。(用下述程序替代上述虚线框中黑体字程序) MOV R0,#33H; (30H)= MOV R1,#44H; (40H)= MOV A,R0; A= PUSH ACC; SP= (61H)= MOV A,R1; A= PUSH ACC; SP= (62H)= NOPPOP ACC; SP= A= MOV R0,A; (30H)= POP ACC; SP= A= MOV R1,A; (40H)= 2 编写一个数据填充和数据块搬移程序数据填充和数据块搬移程序。仿照实验内容和步骤1的过程,建立、编辑、汇编、连接和动态调试程序,查看和验证数据区

7、的内容是否正确。参考程序如下:ORG 0000HLJMP MAINORG 0100HMAIN:MOVR0,#30H; R0指向30H单元MOVR2,#16; R2作循环计数器NEXT1:MOVR0,#*; 填充当前单元INCR0; 指针下移一个单元DJNZR2,NEXT1; 未填完16个单元,返回 继续填充;以下程序将30H开始的16个字节内容送到0100H开始的外部存储器外部存储器中MOVR1,#30HMOVDPTR,#0100H ;MOV R3,#10H ; 此处R3取值的理由是: NEXT2:MOVA,R1MOVX DPTR,AINC R1INC DPTRDJNZR3,NEXT2SJMP

8、$END3 编写一个多字节的算术运算程序多字节的算术运算程序。(视时间选做)仿照实验内容和步骤1的过程,建立、编辑、汇编、连接和动态调试程序,将运行结果写到程序的注释部分。 ORG 0000H LJMP MAIN ORG0100H MAIN: MOV SP,#60H MOV R1,#12H MOVR0,#34H;R1R0= MOVR2,#21H MOVR3,#0EFH ;R3R2= ;下面是加法运算MOVA,R0 ADDA,R2; 低8位相加 MOVR4,A; MOVA,R1 ADDC A,R3; 高8位相加 MOVR5,A MOVA,#0 ADDC A,#0 MOVR6,A; R6存放进位,

9、 R6R5R4= NOP ;以下是减法运算 CLR C MOV A,R2 SUBBA,R0 MOVR4,A MOVA,R3 SUBB A,R1 MOVR5,A MOVA,#00H SUBB A,#00H MOVR6,A;R6R5R4= ;以下是乘法运算 NOP MOV A,R0 MOVB,R2 MULAB MOVR4,A MOVR5,B MOV A,R1 MOVB,R2 MUL AB ADDA,R5 MOVR5,A MOV A,B ADDC A,#00H MOVR6,A NOP MOV A,R0 MOVB,R3 MULAB ADDA,R5 MOVR5,A MOVA,B ADDC A,R6MOV

10、R6,A MOV A,R1 MOVB,R3 MUL AB ADDA,R6 MOVR6,A MOV A,B ADDC A,#00H MOVR7,A;R7R6R5R4= SJMP $ END五、注意事项和要求1、按照实验步骤学会建立工程文件、加入文件、编辑文件过程。2、学会动态调试程序、查看寄存器和存储器内容。六、实验报告要求1、总结程序建立、编辑、汇编、连接和调试过程,对所编写的三个程序作适当注释,并标明程序执行后相关寄存器和存储器的内容。2、查表操作实验:在程序中建一个平方表,查出R2中数据(不大于15)的平方并重新存到R2中。(选做)3、编写主、子两程序。子程序名 AVERAGE,入口参数:内部 RAM 中 50H59H 十个单元中的数(由主程序给出);出口参数:A,存放十个数的平均值。主程序负责给出十数,再把求得的平均值转换为 ASCII 码,存在 70H 开始的单元以备送显。(选做)七、参考书目1林立,单片机原理及应用-基于 Proteus 和 Keil C,北京:电子工业出版社,2013.1.2刘湘涛,江世明,单片机原理与应用,北京:电子工业出版社,2006.7.3周立功,单片机实验与实践,北京:北京航空航天大学出版社,2004.8.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号