- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
华中科技大学单片机实验实验报告MCS51单片机
华中科技大学单片机实验报告
MCS-51系列单片机
(单片机原理及应用实验)
(根据2014年电气与电子工程学院单片机实验课程改编)
专 业: 电气工程及其自动化
班 级: 气卓1301
姓 名: 廖鹏毅
学 号:
ALL RIGHT RESERVED目 录
实验3.1 软件仿真实验………………………………………………3
实验2“跑马灯”实验…………………………………………………8
实验3 数码管显示功能的实现………………………………………11
实验5 按键功能的实现………………………………………………23
实验7 A/D转换器件TLC1543的用……………………………………29
实验8 D/A转换器件TLV5617的应用…………………………………34
实验14指示灯的外部中断控制………………………………………47
实验18定时器控制继电器……………………………………………49
自行设计实验 …………………………………………………………53
实验总结 ………………………………………………………………55
实验3.1 软件仿真实验
一 实验目的
1 掌握软件仿真的方法
2 熟悉集成开发环境的使用
3 熟悉常用指令的功能
4 熟悉程序调试的方法
5 学习自己编写、调试计算机程序
二 实验内容
1 将Keil软件设置为软件仿真的方式
2 将3.1.4介绍的示例程序录入、编译、调试
3 观察有关寄存器、变量的值,理解程序及指令的功能
4 编译、调试、验证自己编写的子程序
三 实验步骤
1 先阅读课本,大致了解仿真软件的使用和注意事项
2 结合课本,边看书边上机操作,逐步了解和掌握仿真软件的使用
3 阅读和理解3.1.4介绍的示例程序,并将其录入、编译、调试
4 赋值给示例程序时,打开各观察窗口,观察有关寄存器、变量的值,验证其功能
5 自行编译、调试、验证自己编写的子程序
四 实验结果
1 给十六进制数转换为十进制数子程序赋初值,
MOV H_DAT0,#01H
MOV H_DAT1,#00H
则编译加载调试该子程序,打开各观察窗口观察有关变量,实验发现D_DAT0,D_DAT1,D_DAT2,D_DAT3中的值分别为00,00,00,01。则符合实际,即验证其功能。
2 给双字节乘法运算子程序赋初值,
MOV R4,#8
MOV R5,#9
MOV R6,#6
MOV R7,#7
然后编译加载调试该子程序,并用观察窗口观察有关变量,实验发现MUL_0,MUL_1,MUL_2,MUL_3分别为08,04,04,07.则符合实际,即验证其功能。
3 给三字节数除双字节数运算子程序赋初值,
MOV ODIV_H,#00H
MOV ODIV_M,#00H
MOV ODIV_L,#01H
MOV DIV_1,#00H
MOV DIV_0,#01H
接着编译加载调试该子程序,并用观察窗口观察有关变量,实验发现R0,R1,R3,R4,R5中的值分别为00,00,00,00,01,则实验验证其功能。
五 实验小结
本次实验,我初步了解仿真软件的使用,同时掌握了编译、加载、调试程序的方法以及验证实验结果的方法
附:3.1.4示例程序
含 主程序
十六进制数转换为十进制数子程序
双字节乘法运算子程序
三字节数除双字节数运算子程序
D_DAT0 EQU 50H
D_DAT1 EQU D_DAT0+1
D_DAT2 EQU D_DAT1+1
D_DAT3 EQU D_DAT2+1
H_DAT0 EQU D_DAT3+1
H_DAT1 EQU H_DAT0+1
ODIV_L EQU H_DAT1+1
ODIV_M EQU ODIV_L+1
ODIV_H EQU ODIV_M+1
DIV_0 EQU ODIV_H+1
DIV_1 EQU DIV_0+1
MUL_0 EQU DIV_1+1
MUL_1 EQU MUL_0+1
MUL_2 EQU MUL_1+1
MUL_3 EQU MUL_2+1
ORG 0000H
AJMP START
ORG 0030H
START: MOV SP,#30H
;在此处给有关变量单元赋值
MOV H_DAT1,#2
MOV H_DAT0,#0
LCALL HTD
;在此处给有关变量单元赋值
LCALL TMUL
;在此处给有关变量单元赋值
LCALL SDIV
LOOP: NOP
AJMP LOOP
HTD: MOV D_DAT3,#00H ;将结果千位清0
MOV D_DAT2,#
文档评论(0)