嵌入式小系统实验指导书汇编.docx

上传人:b****7 文档编号:24027329 上传时间:2023-05-23 格式:DOCX 页数:18 大小:126.79KB
下载 相关 举报
嵌入式小系统实验指导书汇编.docx_第1页
第1页 / 共18页
嵌入式小系统实验指导书汇编.docx_第2页
第2页 / 共18页
嵌入式小系统实验指导书汇编.docx_第3页
第3页 / 共18页
嵌入式小系统实验指导书汇编.docx_第4页
第4页 / 共18页
嵌入式小系统实验指导书汇编.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

嵌入式小系统实验指导书汇编.docx

《嵌入式小系统实验指导书汇编.docx》由会员分享,可在线阅读,更多相关《嵌入式小系统实验指导书汇编.docx(18页珍藏版)》请在冰豆网上搜索。

嵌入式小系统实验指导书汇编.docx

嵌入式小系统实验指导书汇编

单片机原理及应用

(一)

过程性实验报告

 

班级:

学号:

姓名:

教师:

 

实验一单片机认识实验

组别:

  同组人:

           成绩:

    日期:

   

一、实验目的:

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

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1