嵌入式小系统实验指导书汇编.docx
- 文档编号:24027329
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:18
- 大小:126.79KB
嵌入式小系统实验指导书汇编.docx
《嵌入式小系统实验指导书汇编.docx》由会员分享,可在线阅读,更多相关《嵌入式小系统实验指导书汇编.docx(18页珍藏版)》请在冰豆网上搜索。
嵌入式小系统实验指导书汇编
单片机原理及应用
(一)
过程性实验报告
班级:
学号:
姓名:
教师:
实验一单片机认识实验
组别:
同组人:
成绩:
日期:
一、实验目的:
1、掌握WAVE6000软件的使用
2、熟悉MCS-51系列单片机的指令系统。
二、实验仪器:
PC机(WAVE6000软件)
三、实验内容:
在PC机上使用WAVE6000软件,分别输入下面两段程序并调试执行
程序1MOV30H,#40H
MOVR0,#30H
MOVA,@R0
MOVR1,A
MOVDPTR,#1000H
MOVX@DPTR,A
程序2
MOVA,60H
XCHA,70H
MOV60H,A
四、实验步骤
1、启动WAVE6000软件
2、输入练习程序
3、保存程序
4、汇编源程序
5、程序执行前的检查
6、运行,调试程序
单步法运行程序
断点法运行程序
连续法运行程序
8、检查运行结果
五、实验结果
程序1
地址
运行前内容
运行后内容
30H
1000H
程序2
地址
运行前内容
运行后内容
60H
70H
实验二顺序结构程序的调试
组别:
同组人:
成绩:
日期:
一、实验目的:
1、掌握顺序结构程序设计
2、掌握WAVE软件调试程序的方法.
、实验内容:
编写下列程序并调试:
1、将片内RAM的70H单元的内容拆开,高4位送71H单元低4位,低4位送72H单元的低4位,71H、72H单元高4位清零。
2、将工作寄存器R2中数据的高4位和R3中的低4位拼成一个数,并将该数存入30H单元。
三、实验程序框图
程序1流程图程序2流程图
三、实验步骤:
程序1
①启动WAVE软件,新建一个文件,保存并取名为LX1.ASM。
②输入源程序1,正确进行机器汇编
③打开窗口菜单,选择数据窗口,检查70H、7lH和72H单元中的内容,并记录在下表左半边
④用全速执行命令开始执行程序
⑤检查7lH和72H单元中的内容,并记录在表1的右半边
⑥修改执行前70H、7lH和72H单元中的内容,重复执行④-⑤步骤,并记录程序执行后表格中的数据。
程序2
①新建一个文件,保存并取名为LX2.ASM。
②输入源程序2,正确进行机器汇编
③打开窗口菜单,选择数据窗口,检查R2、R3和30H单元中的内容,并记录在下表左半边的格子中
④用全速执行命令开始执行程序
⑤检查30H单元中的内容,并记录在表2的右半边格子中
⑥修改执行前R2、R3、30H单元中的内容,重复执行④-⑤步骤,并记录程序执行后的数据。
四、实验结果
1.源程序
程序1程序2
2.实验数据
表1:
拆字程序实验调试数据
执行前的单元内容
执行后的单元内容
70H
71H
72H
71H
72H
表2:
合字程序实验调试数据
执行前单元内容
执行后单元内容
R2
R3
30H
30H
(3)思考:
如何用断点方法调试本程序。
实验三分支和循环结构程序的调试
组别:
同组人:
成绩:
日期:
一、实验目的:
1、掌握分支和循环结构程序的设计
2、进一步掌握WAVE软件调试程序的方法.
、实验内容:
编写下列程序并调试:
1、设a数已存放在累加器A中,b数已存放在寄存器B中,计算下式,并将结果y送入片内RAM的30H单元。
a+b(b≥0)
Y=
a-b(b<0)
2、将片内30H-3FH单元的内容清零。
3、从片内RAM的20H单元开始,有30个带符号数据,统计出正数的个数,并将结果存到40H单元中。
三、实验程序框图
程序1流程图程序2流程图
四、实验步骤:
程序1
①启动WAVE软件,新建一个文件,保存并取名为LX3.ASM。
②输入源程序1,正确进行机器汇编
③打开窗口菜单,选择数据窗口,检查A、B和30H单元中的内容,并记录在下表左半边
④用全速执行命令开始执行程序
⑤检查30H单元中的内容,并记录在表1的右半边
⑥修改执行前A、B中的内容,重复执行④-⑤步骤,并记录表格中执行后的数据。
程序2
①新建一个文件,保存并取名为LX4.ASM。
②输入源程序2,正确进行机器汇编
③打开窗口菜单,选择数据窗口,检查30H-3FH单元中的内容,如果是零值,将它们修改为非零值。
④用全速执行命令开始执行程序
⑤检查30H-3F单元中的内容,是否全为零。
⑥修改执行前30H-3F单元中的内容,重复执行④-⑤步骤,重新检查30H-3F单元中的内容。
程序3
①启动WAVE软件,新建一个文件,保存并取名为LX5.ASM。
②输入源程序3,正确进行机器汇编
③打开窗口菜单,选择数据窗口,检查35H、20H-3DH单元中的内容,并记录在下表左半边
④用全速执行命令开始执行程序
⑤检查35H单元中的内容,并记录在表2的右半边
⑥修改执行前20H-3DH中的内容,重复执行④-⑤步骤,并记录执行后的数据。
五、实验结果
1.实验源程序
程序1程序2
程序3
2.实验数据
表1:
程序1实验调试数据
执行前的单元内容
执行后的单元内容
A
B
30H
30H
表2:
程序3实验调试数据
执行前的内容
执行后的内容
20H-3DH
40H
40H
实验四并行IO口的应用
组别:
同组人:
成绩:
日期:
一、实验目的:
1、掌握并行IO口的应用技术
2、掌握软硬联调的方法.
、实验内容:
用单片机的P1口控制8个按键,P2口控制8个发光二极管,当检测到P1.0上的键按下时,P2.0上的灯亮;当检测到P1.1上的键按下时,P2.0~P2.1上的灯亮;当检测到P1.2上的键按下时,P2.0~P2.1上的灯亮;以此类推。
当检测到P1.7上的键按下时,8个灯全亮。
并可反复循环检测按键与点亮相应的灯。
三、画出硬件原理
四、实验程序框图
五、实验源程序
实验五外部中断(急救车与交通灯)
组别:
同组人:
成绩:
日期:
一、实验要求
本实验模拟交通信号灯控制,一般情况下正常显示,有急救车到达时,两个方向交通信号灯全红,以便让急救车通过。
设急救车通过路口时间为10秒,急救车通过后,交通恢复正常,本实验用单次脉冲申请外部中断,表示有急救车通过。
二、实验目的
1、学习外部中断技术的基本使用方法。
2、学习中断处理程序的编程方法。
三、实验电路及连线
四、实验框图
五、程序清单
STOPequ01h
SRequp1.0;南北红灯
SYequp1.1;南北黄灯
SGequP1.2;南北绿灯
ERequP1.3;东西红灯
EYequP1.4;东西黄灯
EGequp1.5;东西绿灯
Org0000h
ljmpStart
org0003h
setbSTOP;南北,东西均红灯
reti
Start:
movSP,#70h
movTCON,#01h;downedgeIT0
movIE,#81h;enableEA,EX0
setbSR;南北,东西均红灯
clrSY
clrSG
setbER
clrEY
clrEG
clrSTOP
Loop:
jbSTOP,AllRed
setbSR;南北红灯,东西绿灯
clrSY
clrSG
clrER
clrEY
setbEG
mova,#20
lcallDelay
jbSTOP,AllRed
setbSR;南北红灯,东西黄灯闪
clrSY
clrSG
clrER
clrEY
clrEG
clrc
movr7,#9
Loop1:
movEY,c
mova,#1
lcallDelay
cplc
djnzr7,Loop1
jbSTOP,AllRed
clrSR;南北绿灯,东西红灯
clrSY
setbSG
setbER
clrEY
clrEG
mova,#20
LcallDelay
jbSTOP,AllRed
clrSR;东西红灯,南北黄灯闪
clrSY
clrSG
setbER
clrEY
clrEG
clrc
movr7,#9
Loop2:
movSY,c
mova,#1
lcallDelay
cplc
djnzr7,Loop2
ljmpLoop
AllRed:
…………………
ljmpLoop
Delay:
;延时0.25秒子程序
…………………..
DelayLoop:
jbSTOP,ExitDelay
……………………
ExitDelay:
ret
end
六、实验结果
源程序
1.ALLRED:
2.DELAY:
实验六定时器/计数器
组别:
同组人:
成绩:
日期:
一、实验目的:
1、掌握Lab6000实验仪联机调试操作
2、掌握单片机定时器/计数器的使用和编程方法
3、进一步掌握中断处理过程的编程,对发光二极管实现定时顺序控制
二、实验仪器:
Lab6000实验仪,PC机(WAVE6000软件),通讯电缆,导线
三、实验内容:
利用单片机内部的定时器/计数器,产生5秒中断一次。
P1口分别接8个发光二极管。
要求编写程序模拟一时序控制装置,开机后第5秒L1、L2亮;第10秒L3、L4亮;第15秒L5、L6亮;第20秒L7、L8亮;第25秒L1、L2、L3、L4亮;第30秒L5、L6、L7、L8亮;第35秒8个发光二极管全灭;第40秒8个发光二极管全亮。
以后又从头开始,一直循环下去。
四、实验原理
单片机内部定时器/计数器用作定时器时,是对机器周期的计数,每个机器周期的长度是12个振荡周期,因为实验仪晶振是12MHZ,所以最长延时时间为65ms左右。
下列程序用定时器/计数器0工作于方式1的定时器方式,达到0.05溢出中断一次;定时器/计数器1工作于方式1的计数器方式,它设定为计数100次,而每次定时器/计数器0时间到、溢出时,将发给它一个计数脉冲。
这样,两个定时器/计数器串接使用的结果0.05*100=5s,可得到5s延时。
五、实验步骤:
1.画硬件原理图
2.编写程序,并在WAVE6000软件环境中输入程序并编译
3.调试并运行程序,观察灯亮的次序是否符合实习内容的要求
六、实验程序框图
七、参考程序
ORG0000H
AJMPMAIN
ORG000BH
AJMPT0INT
ORG001BH
RETI
ORG0030H
MAIN:
MOVP1,#0FFH
MOVR3,#00H
MOVSP,#53H
START:
CLR00H
…………………
HERE:
JNB00H,HERE
CLREA
MOVA,R3
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP1,A
INCR3
CJNER3,#8,LOOP
MOVR3,#00H
LOOP:
LJMPSTART
TAB:
DB03H,0CH,30H,0C0H,0FH
DB0F0H,00H,0FFH
T0INT:
…………………
QUIT:
RETI
END
八、实验结果
START:
T0INT:
HERE:
JNB00H,HEREQUIT:
RETI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 实验 指导书 汇编