实验一 单片机实验软件开发环境和简单程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

姓名陈舒婷学号1515231008

时间20171114地点机电信息实验大楼

实验题目实验一软件开发环境和简单程序设计

一、实验目的与要求

1. 熟悉W A VE软件使用

2. 学习简单程序的调试方法

二、实验主要仪器及环境:

WA VE软件、W A VE软件模拟器

三、实验内容及步骤

1.启动PC机,打开W A VE软件,软件设置为模拟调试状态。在所建的项目文件中输入源程序,进行编译,编译无误后,执行程序,点击全速执行快捷按钮,点击暂停按钮,观察存储块数据变化情况,点击复位按钮,可再次运行程序。

2.打开CPU窗口,选择单步或跟踪执行方式运行程序,观察CPU窗口各寄存器的变化,可以看到程序执行的过程,加深对实验的了解。

四、实验流程框图、实验程序

1、

(1)参考程序

ORG 0000H

START EQU 30H

MOV R0, #START

MOV R2, #10

mov a,#01h

Loop:

MOV @R0,A

INC R0

DJNZ R2,Loop

NOP

LJMP $

END

(2)说明此程序的功能

答将RAM内的30H单元到39H单元的内容全部置1。

2、加减法运算

(1)将立即数#B5H、#36H、#89H分别传送至内部RAM区40H、R2、A中。

(2)将内部RAM区40H中的内容与A中的内容相加,然后再与R2中的内容相加,结果存放至内部RAM区50H中。

(3)将A中的内容与内部RAM区40H中的内容相减,结果存放至内部RAM区60H中。

程序:

ORG 000H

MOV 40H, #0B5H

MOV R2,#36H

MOV A,#89H

ADD A,40H

ADD A,R2

MOV 50H,A

SUBB A,40H

MOV 60H,A

END

3、乘除法运算

(1)将立即数#75H、#31H分别传送至内部RAM区15H、33H中。

(2)将内部RAM区15H单元的内容与33H单元的内容相乘。

(3)将乘积的高8位和低8位分别传送至内部RAM区31H、30H中。

(4)将内部RAM区15H单元的内容除以33H单元的内容。

(5)将商和余数分别传送至内部RAM区41H、40H中。

程序:

ORG 0000H

MOV 15H, #75H

MOV 33H, #31H

MOV A,15H

MOV B,33H

MUL AB ;相乘之后B是高八位,A是低八位

MOV 31H,B

MOV 30H,A

MOV A,15H

MOV B,33H

DIV AB ;A/B 得到A(商),B(余数)

MOV 41H,A

MOV 40H,B

五、程序测试报告(调试输入数据、结果数据或状态。)

1、参考程序

运行结果:

2、加减法运算

运行结果:

3、乘除法运算

运行结果:

五、思考题

1、软件开发环境提供了哪些调试手段?各有何特点?

答:伟福仿真器为我们的调试提供了多种方法,它可以编译,以便查找语法错误;单步执行,来检查每句程序的功能;全速执行程序,来检查整段程序要完成的功能;还可以设置断点进行调试,以便分段执行程序。

2、如何将存储器块的内容移动到另一位置?

答:借助指针和寄存器,利用转移类指令即可将存储器块的内容移动到另一位置。

六、小结

本次实验用的是伟福软件模拟器,通过这次试验我基本掌握了wave仿真开发软件的使用方法和基本的编程、调试方法,了解了单片机内部存储器的结构和分配及读写存储器的方法。

除此之外,值得我们注意的是:用伟福进行模拟仿真的时候,在运行时文件保存名后缀必须为.ASM;以字母开头的16进制数前边要加‘0’,否则会报错;文件路径最好用全英文形式,避免编译出错而找半天又不知道错误出在哪里。

相关文档
最新文档