单片机原理及应用实验项目指南.doc

单片机原理及应用实验项目指南.doc

ID:56010460

大小:1002.50 KB

页数:28页

时间:2020-03-15

单片机原理及应用实验项目指南.doc_第1页
单片机原理及应用实验项目指南.doc_第2页
单片机原理及应用实验项目指南.doc_第3页
单片机原理及应用实验项目指南.doc_第4页
单片机原理及应用实验项目指南.doc_第5页
资源描述:

《单片机原理及应用实验项目指南.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验一熟悉实验仿真环境及数据传送实验【实验目的】1.熟悉仿真软件的使用,掌握调试程序的几种方法;2.理解常用指令的作用;3.熟悉几种典型的子程序编程【实验内容】1.数据块传送程序的调试2.延时子程序的调试3.二进制数转换十进制数子程序的调试4.双字节无符号数加法程序调试(选作)【实验程序及操作步骤】1.数据块传送程序的调试实验程序one:将十六进制数0-F存到RAM的30H-3FH地址单元中;two:将RAM的30H-3FH地址单元中的数据传送到40H-4FH地址单元中。源程序如下:Addr1equ30h;定义源数据起始地址Addr2equ40h;定义目的起始地址Len

2、equ10h;定义数据块长度ORG0000h;指明程序的起始地址one:;将十六进制数0-F存到RAM的30H-3FH地址单元中;CLRA;要传送的数据放A里,初始值为0MOVR0,#addr1;R0为地址指针,初始指向30HMOVR2,#Len;R2是数据块的长度Loop1:MOV@R0,A;把A里的数据送R0指向的地址(调试时观察数据存储区30H-3FH里数;据在执行指令前后的变化)INCR0;修改地址指针INCA;修改A中的数据DJNZR2,Loop1;控制循环次数(调试时观察R1里数据的变化,体会DJNZ指令的作用)two:;将RAM的30H-3FH地址单元中的

3、数据传送到40H-4FH地址单元中。MOVR0,#addr1;R0作为源数据地址指针,起始地址是30HMOVR1,#addr2;R1作为目地地址指针,起始地址是40HMOVR2,#len;R2是数据块的长度Loop2:MOVA,@R0;取源数据(调试时观察R0的间接寻址的作用)MOV@R1,A;源数据送目的地址单元(调试时观察R1的间接寻址的作用)INCR0;修改源数据地址指针INCR1;修改目的地址指针DJNZR2,Loop2;控制循环次数,调试时观察R2里数据的变化,体会DJNZ指令的作用SJMP$;程序原地踏步END;程序结束实验操作:(1)新建工程主菜单单击桌面

4、图标,打开uVision3程序,如图1-1所示。运行信息显示窗口工程窗口工具栏编辑窗口图1-1程序界面单击“工程”菜单下“新建uVision3工程”新建工程,弹出“产生新工程”对话框,如图1-2所示。图1-2新建工程输入文件名,单击图1-2中“保存”按钮,选择单片机型号,Atmel/AT89S52。单击“确定”按钮,完成新建工程,程序界面如图1-3所示。单击滚动条选择AT89S52图1-3选择单片机型号(2)新建源文件单击“文件”菜单下“新建”,新建源程序文件,在空白区输入源程序,单击工具栏中保存文件,保存文件时要手动添加文件扩展名为asm,如图1-4所示。手动添加扩展

5、名asm图1-4建立源程序文件鼠标右键单击“工程窗口”中“源代码组1”,在弹出的下拉菜单中选择“添加文件到组源代码组1”中,把刚保存的asm源程序文件添加到工程组中,如图1-5所示。注意路径及文件类型的修改。图1-5添加源代码程序(3)编译、连接和调试单击“工程”菜单下“编译”源程序文件(或单击工具栏中快捷按钮,其位置在第二行工具栏第一个),在输出窗口(OutputWindow)显示编译结果,如图1-6所示。图1-6输出窗口单击进行连接,为单个源程序文件连接,为工程内所有源程序文件连接。连接的结果显示在输出窗口中。单击“调试”菜单下选择“启动/停止调试”开始程序调试(或

6、单击工具栏中快捷按钮,其位置在第一行工具栏倒数第七个),程序主界面如图1-7所示。图1-7调试界面调试工具栏如图1-8所示。图1-8调试工具栏(4)打开各窗口查看机器码、各种存储器地址及内容单击“视图”菜单打开“反汇编窗口”,如图1-9所示,查看各条指令对应的机器码和存储地址。存储器地址机器代码图1-9反汇编窗口单击“视图”菜单打开“存储器窗口”,如图1-10所示,查看各存储器内的数值。字母:数字(字母c、d、i、x分别代表代码存储空间、直接寻址的片内存储空间、间接寻址的片内存储空间、扩展的外部RAM空间;数字代表起始位置)图1-10存储器窗口程序主界面左边“工程窗口”

7、显示特殊寄存器数值,如图1-11所示。图1-11特殊寄存器窗口实验记录1根据反汇编窗口记录从标号two到end之间的指令对应的机器码和存储地址于表1-1中。表1-1指令机器代码存储器地址MOVR0,#addr17830000A000BMOVR1,#addr2MOVR2,#lenLoop2:MOVA,@R0MOV@R1,AINCR0INCR1DJNZR2,Loop2SJMP$实验记录2根据图1-10存储器窗口把各地址单元里存储的机器代码记录于表1-2中。表1-2代码存储器地址0000H0001H0002H0003H0004H0005H000

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。