单片机实验验指导书09.docx
- 文档编号:16433259
- 上传时间:2023-07-13
- 格式:DOCX
- 页数:11
- 大小:37.88KB
单片机实验验指导书09.docx
《单片机实验验指导书09.docx》由会员分享,可在线阅读,更多相关《单片机实验验指导书09.docx(11页珍藏版)》请在冰点文库上搜索。
单片机实验验指导书09
单片机实验指导书
(与RM51单片机实验板配套使用)
三明学院
2008年09月01日
实验一伟福仿真软件的使用方法
一、实验目的
熟悉伟福仿真软件软件的使用方法
二、实验内容
给定如下程序:
ORG0000H
MOVSP,#40H
MOVA,#OFAH
MOVRO,A
MOV70H,#80H
MOVR1,70H
XCHA,70H
PUSHACC
PUSH70H
POPACC
POP70H
SJMP$
END
二、实验步骤
实验前请认真阅读伟福仿真软件使用说明。
(1)启动伟福仿真软件
(2)编辑源程序:
点击File/Open(或接F3),输入文件名TEST1.ASM,按回车,这时系统打开一个名为TEST1.ASM的编辑窗口,可以在编辑窗口中输入实验程序(即源程序)。
(4)保存源程序,点击File/Save或按F2即可。
(5)汇编源程序,点击Assemble/Assembhe或按ALT-F9即可,集成环境首先对源程序进行汇编,若发现错误立即返回编辑状态,并打开一个错误信息窗口,用户可按提示修改源程序,若无错误则返回编辑窗口等待调试。
(6)单步执行程序
首先从屏幕的观察窗口中记下R0,R1,A和70H单元的内容。
按F7键执行跟踪单步命令,程序每执行一步,均可从屏幕观察窗口中观察到R0,R1,A,70H单元内容的变化情况。
当程序运行至SJMP后,记录结果。
(7)全速运行程序
按CTRL-F2,仿真器复位,按CTRL-F9全速运行程序,观察R0,R1,A和70H单元内容的变化情况,并记录结果。
注:
在全速运行程序时,按CTRL-C可随时中断程序运行。
(8)设置断点并运行程序
将光标移动到PUSHACC位置,按CTRL-F8键设置断点(按CTRL-F8也可取消断点)
按CTRL-F2将仿真器复位;再按CTRL-F9全速运行程序程序程序到断点处,观察R0,R1,A和70H单元内容的变化情况,并记录结果。
(9)修改观察窗口内存单元
用单步执行程序至MOVR1,70H时,将观察窗口70H单元的内容改为“50H”后继续单步运行程序,观察R0,R1,A,70H单元内容的变化情况,并记录最后的结果。
四、实验报告
1、写出伟福仿真软件使用时的主要步骤。
2、写出程序清单,并根据实验结果填写下表:
存储单元
R0
R1
A
70H
SP
程序运行前
程序运行后
单步
全速运行
断点
修改
3、程序最后无“END”结尾时,汇编调试时会出现什么情况?
实验二数据传送实验
一、实验目的
掌握单片机内部RAM和外部RAM的数据操作,掌握这两部分RAM存储器的特点与应用。
二、实验内容
编写并调试一个数据传送程序,将内部RAM40H~4FH的16个数据送到
外部RAM0000H~000FH单元。
并调试检查写入的内容是否正确。
三、实验步骤
1、 启动伟福模拟仿真软件。
2、 输入实验源程序一,名为TEST3A.ASM。
3、 汇编源程序一,直至无错误为止。
4、 装入数据,单步执行或断点执行程序,检查结果是否正确。
在程序运行之前,将01H,02H,03H……,0FH,16个数据写入内部RAM40H~4FH的16个单元,然后执行程序,检查外部RAM0000H~000FH16个单元内容是否与内部RAM40H~4FH单元的数据一一对应。
四、编程指示
Y
N
五、实验报告
1、写出程序清单。
2、试编写数据块清零程序。
3、编写将外部RAM0000H~000FH单元的数据传送到内部RAM40H~4FH单元的程序。
实验三I/O接口实验
一、实验目的:
掌握MCS-51单片机的P1口作为并行输入、P3口作为并行输出方式使用时的电路设计及软件编程方法。
二、实验内容:
1、编写P1口输出实验程序,使发光二极管在程序的控制下自动按照设定的规律亮灭。
2、编写P3口输入实验程序,通过接收开关设置的参数来控制发光管的亮灭。
三、实验电路(见RM51单片机实验板参考原理图)
四、实验步骤
1、输出实验
(1)认真阅读RM51单片机实验板参考原理图,掌握P1.0~P1.7和LED3~LED10的连接关系。
(2)在伟福软件中编制程序,首先使所有的发光二极管全部熄灭,之后从LED3开始,LED3~LED6四个发光二极管轮流发光1秒,然后四个二极管全部发光1秒,最后全灭1秒,完成一个过程后又重新开始,周而复始。
(3)在伟福软件中用单步、断点、连续方式调试程序,直至正确。
(4)将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,观察LED3~LED6四个发光二极管的状态,验证运行结果是否正确,直至达到实验的要求为止。
2、输入实验
(1)认真阅读RM51单片机实验板参考原理图,掌握开关K1~K4和P3.2~P3.5的连接关系。
(2)在伟福软件中编制程序,将P1.0设置为输出口,P3.2设置为输出口,按一次开关K1,LED3熄灭,再次按开关K1,LED3亮,如此循环,LED3亮灭交替。
(3)在伟福软件中用单步、断点、连续方式调试程序,直至正确。
(4)将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,反复按下K1,观察LED3的状态,验证运行结果是否正确,直至达到实验的要求为止。
五、编程提示
1、延时子程序的延时计算问题
对于程序DELAY
DELAY:
MOVR5,#10
LOOP:
MOVR6,#200
LOOP1:
MOVR7,#250
LOOP2:
DJNZR7,LOOP2
DJNZR6,LOOP1
DJNZR5,LOOP
RET
查指令表可知DJNZ指令需用两个机器周期,在12MHZ晶振时,一个机器周期时间长度为1s,所以该段程序执行时间为:
(((250×2+3)×200)+3)×10+3≈1s
六、实验报告
1、写出程序清单(要写出必要的注释)
3、思考:
程序没有进行按键消抖动处理,控制结果会因为按键抖动而出错,按压K1十次,大概有3~5次输出会因为按键抖动而发生错误,实验时请多按几次,观察一下效果,加深对按键消抖动重要性的认识。
实验四外部中断实验
一、实验目的:
1、掌握外部中断技术的基本使用方法。
2、掌握中断处理程序的编程方法。
3、加深理解外部中断优先级的概念。
二、实验内容:
编制程序使INT0、INT1为边沿触发方式,INT1为高级中断。
在主程序中使8个LED轮流闪烁;外中断程序0中,8个指示灯同时闪烁8次;外中断程序1中,左右4个指示灯交替闪烁。
因为INT1为高级中断,所以INT1中断可以中断INT0中断程序,即当按压K1进入外中断0时,8个LED同时闪烁,此时按压K2可以中断TIN0的执行。
相反,当INT1中断后,按压K1则不能中断INT1的执行。
三、实验电路(见RM51单片机实验板参考原理图)。
四、实验步骤
1、认真阅读RM51单片机实验板参考原理图,
2、在伟福软件中用单步、断点、连续方式调试程序一,检查程序运行结果是否正确,排除软件错误。
3、将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,观察LED3~LED10四个发光二极管的状态,验证运行结果是否正确,直至达到实验的要求为止。
五、编程提示
1、外部中断INT0的入口地址为0003H;外部中断INT1的入口地址为0013H。
2、中断服务程序编程的关键是:
(1)保护进入中断的状态,并在退出中断之前恢复进入时的状态。
(2)必须在中断程序中设置是否允许中断重入,即设置EX0位。
3、一般中断程序进入时应保护PSW,ACC以及中断程序使用但非其专用的寄存器。
另外中断程序中涉及到关键数据的设置时应关中断,即设置不允许重入。
七、实验报告
1、画出硬件接线图。
2、写出程序清单(要写出必要的注释)。
3、思考:
中断响应的条件是什么?
如何用软件实现中断请求?
实验五定时器/计数器实验
一、实验目的
1、掌握MCS-51单片机的定时器/计数器工作方式和编程方法。
2、进一步掌握MCS-51单片机中断服务程序编写方法。
二、实验内容
1、程序一:
利用单片机内部中断方式定时器0实现LED3(通过P1.0口)闪烁。
2、程序二:
利用单片机内部定时器和计数器,控制发光二极管LED10(通过P1.7口)以亮1秒,暗1秒的速度闪烁。
三、实验电路
程序一:
见RM51单片机实验板参考原理图。
程序二:
见RM51单片机实验板参考原理图(需要自己用导线将P1.0接T1(P3.5))。
四、实验步骤
1、认真阅读RM51单片机实验板参考原理图。
2、在伟福软件中用单步、断点、连续方式调试程序一,检查程序运行结果是否正确,排除软件错误。
3、将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,观察LED3的状态,验证运行结果是否正确,直至达到实验的要求为止。
4、在伟福软件中用单步、断点、连续方式调试程序二,检查程序运行结果是否正确,排除软件错误。
5、用导线将P1.0接T1(P3.5)。
6、将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,观察LED3和LED10的状态,验证运行结果是否正确,直至达到实验的要求为止。
五、编程提示
1、程序1说明
定时器T0、T1的数据寄存器都是16位,定时间隔有限,因此会发现LED3闪烁的速度很快。
2、程序2说明
(1)该程序要求定时时间间隔为1秒,故应采用复合定时的方法。
即设T0为50ms定时器,每50ms使P1.0输出变化一次,则100ms后P1.0输出一个完整的计数脉冲,作为T1计数器的计数输入,所以T1每计数10次就能完成1秒的定时。
六、实验报告
1、画出硬件接线图。
2、写出程序清单(要写出必要的注释)和执行结果。
3、根据单片机定时器工作方式,如何选择好的工作方式?
在长时间定时中,如何提高定时精度?
实验六数码管显示实验
一、实验目的
1、掌握数码管显示器的工作原理。
2、握MCS-51单片机与数码管显示器接口电路的设计方法。
3、掌握MCS-51单片机驱动数码管显示器的程序编写方法。
二、实验内容
1、程序一(静态显示):
数码管静态显示一个“6”。
2、程序二(动态显示):
在实验板5位数码管上动态显示“89C51”。
三、实验电路(见RM51单片机实验板参考原理图)。
四、实验步骤
1、认真阅读RM51单片机实验板参考原理图。
2、在伟福软件中用单步、断点、连续方式调试程序一,检查程序运行结果是否正确,排除软件错误。
3、将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,观察数码管的状态,验证运行结果是否正确,直至达到实验的要求为止。
4、在伟福软件中用单步、断点、连续方式调试程序二,检查程序运行结果是否正确,排除软件错误。
6、将生成的*.hex目标文件通过ISP下载线烧写到单片机内部,观察数码管的状态,验证运行结果是否正确,直至达到实验的要求为止。
五、编程提示
对于动态显示电路,为防止闪烁,需要有显示延时。
延时子程序如下:
;********延时子程序********
DELAY:
MOVR1,#10
Y1:
MOVR2,#100
DJNZR2,$
DJNZR1,Y1
RET
END
六、实验报告
1、画出硬件接线图。
2、写出程序清单(要写出必要的注释)和执行结果。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实验 指导书 09