实验1-汇编实验一_第1页
实验1-汇编实验一_第2页
实验1-汇编实验一_第3页
实验1-汇编实验一_第4页
实验1-汇编实验一_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验1 汇编实验一实验设备Ø 硬件:PC机一台;Ø 软件:µVision IDE for ARM集成开发环境,Windows 98/2000/NT/XP。实验内容Ø 熟悉开发环境的使用并使用ldr/str,mov 等指令访问寄存器或存储单元;Ø 使用add/sub/lsl/lsr/and/orr 等指令,完成基本算术/逻辑运算。实验步骤1. 新建工程首先在KeilARMExamplesMini2410-IV4.1_asm1目录下建立文件夹命名为Asm1_a,运行µVision5 IDE 集成开发环境,选择菜单项“Project -&g

2、t; New-> µVision Project”,系统弹出一个对话框,按照图4-1-3 所示,输入相关内容。点击“保存”按钮,将创建一个新工程asm_1a.Uv2。图 4-1-3 新建工程2. 为工程选择CPU 新建工程后,要为工程选择CPU,如图4-1-4所示,在此选择SAMSUNG的S3C2410A:图 4-1-4 选择CPU3. 添加启动代码在图4-1-5中点“确定”后,会弹出一个对话框,问是否要添加启动代码。如图 4-1-5所示。图 4-1-5 添加启动代码由于本实验是简单的汇编实验,因此不需要启动代码,选择否。4. 选择开发工具要为工程选择开发工具,在Project

3、 - Manage - Components,Environment and Books - Folder/Extensions对话框的Folder/Extensions页内选择开发工具,如图4-1-6所示。图4-1-6 选择开发工具从图中可以看到,有三个开发工具可选,在此选择RealView Compiler。5. 建立源文件点击菜单项File - New,系统弹出一个新的、没有标题的文本编辑窗,输入光标位于窗口中第一行,按照实验参考程序编辑输入源文件代码。编辑完后,保存文件asm1_a.s。(源代码可以参考DISK3_S3C241003-Codes01-MDKMini2410-IV4.1_

4、asm1中的asm1_a.s文件)6. 添加源文件单击工程管理窗口中的相应右键菜单命令,选择Add Files to,会弹出文件选择对话框,在工程目录下选择刚才建立的源文件asm1_a.s。如图4-1-7所示。图 4-1-7 添加源文件7. 工程配置把DebugINRam.ini文件拷贝到KeilARMExamplesMini2410-IV4.1_asm1Asm1_a目录下。选择菜单项Project->Option for Target,将弹出工程设置对话框,如图4-1-8所示。对话框会因所选开发工具的不同而不同,在此仅对Target选项页、Linker选项页及Debug选项页进行配置。

5、Target选项页的配置如图4-1-8;Linker选项页的配置如图4-1-9;Debug选项页的配置如图4-1-10。需要注意,在Debug选项页内需要一个初始化文件:DebugINRam.ini。此.INI文件用于设置生成的.AXF文件下载到目标中的位置,以及调试前的寄存器、内存的初始化等配置操作。它是由调试函数及调试命令组成调试命令脚本文件。图4-1-8 基本配置Target图4-1-9 基本配置Linker图4-1-10 基本配置Debug 8. 生成目标代码选择菜单项Project - Build target或快捷键F7,生成目标代码。在此过程中,若有错误,则进行修改,直至无错误。

6、若无错误,则可进行下一步的调试。9. 调试选择菜单项Debug - Start/Stop Debug Session 或快捷键 Ctrl+F5,即可进入调试模式。若没有目标硬件,可以用µVision 5 IDE 中的软件仿真器,做如下调试工作:l 打开memory 窗口,单步执行,观察地址0x30200000中内容的变化;l 修改数据,重新生成并调试,观察 存储器界面数值变化。l 单步执行,观察寄存器的变化;l 结合实验内容和相关资料,观察程序运行,通过实验加深理解ARM指令的使用;实验参考程序1. 实验A汇编程序:;*; NAME:asm1_a.s ; Author: TYW/WU

7、HAN R&D Center,Embest ; Desc: ARM instruction examples ; History: ;*;/*- */;/* constant define */ ;/*- -*/xEQU45; x=45yEQU64; y=64/stack_topEQU0x30200000; define the top address for stacks export Reset_Handler;/*- -*/;/* code */;/*-*/AREA text,CODE,READONLY exportReset_Handler ; code start */ldrsp, =stack_topmovr0, #x; put x value into R0strr0, sp; save the value of R0 into stacksmovr0, #y ; put y value into R0ldrr1, sp ; read the data from stack,and put it into R1addr0, r0, r1 ;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论