单片机 实验1-2

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

实验一数据存储器实验

一、实验目的

1.掌握片内数据存储器的地址分配。

2.掌握对片内数据存储器进行数据读写的方法。

3. 掌握用Proteus调试汇编源程序的方法。

二、实验预备知识

8051的片内数据存储器共有256个单元,按其功能划分为两个部分:低128单元(单元地址00H~7FH)和高128单元(单元地址80H~FFH)。

低128单元按其用途划分为工作寄存器区(单元地址00H~1FH)、位寻址区(单元地址20H~2FH)、用户RAM区(单元地址30H~7FH)三个区域。如图2-1所示。

高128单元是分配给特殊功能寄存器使用的,其中部分单元(单元地址能被8整除的)可以进行位寻址。

三、实验内容

通过执行程序中的相关指令,将有关数据写入工作寄存器区、位寻址区、数据缓冲区和特殊功能寄存器区各存储单元,观察当前在用工作寄存器组的选择与数据传送目标的对应关系、字节地址与位地址的区别、特殊功能寄存器的字节地址、程序计数器PC在执行指令中的作用。

四、实验步骤

1. 新建设计文件。单击“文件”→“新建设计”,在弹出的“Create New Deign”对话框中选择“DEFAULT”模板后单击“OK”。

2. 设置图纸尺寸。单击“系统”→“设置图纸尺寸”,在弹出的“Sheet Size Configuration”对话框中选择“A4”图纸尺寸或自定义尺寸后单击“OK”。

3. 设置网格。单击“查看”→“网格”,网格显示(再次单击,网格不显示)。单击“查看”→“Snap xxth”(或Snap x.xin),可改变网格单位,默认为“Snap 0.1in”。

4. 保存设计文件。单击“文件”→“保存设计”,在弹出的“Save ISIS Design File”对话框中指定文件夹(如D盘电信061××文件夹)、输入文件名“reg”并选择保存类型为“Design Files”后单击“保存”。

5. 选取元器件。从Proteus元器件库中选取元器件AT89C51(单片机)。单击模式选择工具栏“元件”按钮,单击器件选择按钮“P”,在弹出的“Pick Devices”(选取元器件)对话框的“Keywords”(关键字)栏中输入元器件名称“AT89C51”(也可以是分类、小类、属性值),与关键字匹配的元器件“AT89C51”显示在元器件列表(Results)中。双击选中的元器件“AT89C51”,便将所选元器件“AT89C51”加入到对象选择器窗口。单击“OK”完成元器件选取。参见图1-2选取元器件对话框。

6. 放置元器件。单击对象选择器窗口的元器件“AT89C51”,元器件名“AT89C51”变为蓝底白字,预览窗口显示“AT89C51”元器件;单击方向工具栏按钮可实现元器件的左旋、右旋、水平和垂直翻转,以调整元器件的摆放方向;将鼠标指针移到编辑区某一位置,单击一次就可放置元器件“AT89C51”。按图2-3所示放置元器件。

7. 编辑元器件。单击模式选择工具栏“编辑”按钮,进入编辑状态。右击(或单击)元器件,该元器件变为红色表明被选中,鼠标指针放到被选中的元器件上,按住左键拖动,将鼠标移到编辑区某一位置松开,即完成元器件的移动。鼠标指针放到被选中的元器件

上右击,单击弹出的快捷菜单中的方向工具栏按钮可实现元器件的旋转和翻转。右击被选中的元器件,可删除该元器件。被选中的元器件外单击,可撤销选中。

8. 放置终端。单击模式选择工具栏“终端”按钮,单击对象选择器窗口的电源终端“POWER”,该终端名背景变为蓝色,预览窗口显示该终端;单击方向工具栏“左旋转”按钮,电源终端逆时针旋转90°;将鼠标指针移到编辑区某一位置,单击一次就可放置一个终端。

9. 连线。单击命令工具栏“实时Snap(捕捉)”按钮,实时捕捉有效(再次单击,实时捕捉无效),当鼠标指针接近引脚末端时,该处会自动出现一个小方框“□”,表明可以自动连接到该点。按图2-3所示单击要连线的元器件起点和终点,完成连线。

10. 添加源程序。单击“源文件”→“增加/移除源文件”,在弹出的“Add/Remove Source Code Files”对话框中单击“Code Generation Tool”栏下拉列表框按钮,选择“ASEM51”(51汇编器);单击新建源文件按钮“NEW”,在弹出的“New Source File”对话框中指定文件存放的文件夹,输入文件名“reg.asm”,单击“打开”,在单击打开的对话框中的按钮“是”;确认“Source Code Filename”栏下拉列表框中显示文件名为“reg.asm”,单击“OK”。

第一次使用该软件时,要按1.2.2节介绍的方法设置代码产生工具。

11. 编辑源程序。单击“源文件”→“reg.asm”,在“Source Editor”源文件编辑器中输入并编辑源程序,确认无误后,单击保存按钮。

12. 编译源程序。单击“源文件”→“构建所有”,弹出源程序编译窗口如图2-2所示。若编译不出错,则自动生成目标代码文件(格式为HEX);若编译出错,根据提示修改源程序并保存,直至编译成功。参见1.2.2节介绍的编译出错的解决办法。

图2-2 源程序编译窗口

13. 加载目标代码文件。先右击后单击单片机“AT89C51”,在弹出的“Edit Component”对话框中单击“Program File”栏的打开按钮,在弹出的“Select File Name”对话框找到刚才编译生成的HEX文件,单击“打开“按钮,完成HEX文件加载;同时将“Clock Frequency”栏中的频率设为12MHz,单击“OK”,完成加载目标代码文件。

14. 仿真。单击仿真工具栏“单步运行”按钮,进入单步运行状态。单击“调试”→“8051 CPU Registers”,单击“调试”→“8051 CPU SFR Memory”,单击“调试”→“8051 CPU Internal (IDATA) Memory”,单击“调试”→“8051 CPU Source Code”,分别打开工作寄存器窗口、特殊功能寄存器窗口、片内数据存储器窗口和源代码调试窗口。

单击源代码调试窗口“单步执行”按钮一次,可执行一条指令;通过各调试窗口观察每条指令执行后数据处理的结果,以加深对硬件结构和指令的理解。程序调试窗口如图2-3所示。

相关文档
最新文档