- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一 汇编指令实验
一、实验目的
1、初步掌握开发环境及ARM软件模拟器。
2、掌握简单的ARM、THUMB汇编指令的使用方法。
3、通过实验观察不同类型指令的工作原理。
二、实验步骤
(一)、掌握ARM程序开发环境RealView MDK。
1、在“我的电脑”中新建一个目录,比如:“Exp01”。(注意:目录尽量建立在自带的U盘上,以防实验工程被还原)
2、打开Keil uVision软件,点击菜单中的“File-Project-New uVision Project”选项,启动新建工程向导程序,新建一个uVision工程。工程文件保存在第1步创建的目录中,工程命名为:“Exp01”。
图1 新建工程向导启动
图2 向导开始首先为新建工程命名为:Exp01
3、新建工程向导的第一步是:选择设备即处理器的选择(Select Device for Target ‘Target1’)。在对话框的左下方有一个列表,列表中选择“NXP-LPC2138”。注:LPC2138是实验箱采用的ARM芯片型号。
图3 向导第1步,设置处理器类型
点击确定按钮后,向导程序会弹出一个“提示框”。这个提示框是询问你是否要向工程中添加LPC2000系列处理器的启动代码。这里可以点击“否”按钮。注:启动文件在生成可下载的运行文件时是必须的,这里只是测试汇编程序所以不需要启动文件。
图4 添加启动代码
4、工程建立完成后,uVision软件的主窗口左边就是工程空间浏览器窗口。可以看到已经建立好的工程默认处理器名:“Target 1”,默认源文件组名:“Source Group 1”。
图5 新建工程后的主窗口
右键列表中的“Target 1”,在弹出菜单中选择“Manage Components”选项。可以打开“Components, Enviroment and Books”窗口。这里可以对默认处理器和源文件组重新命名。
图6 “Components, Environment and Books”窗口
5、在软件主窗口的工具条上点击“新建图标”,就会新建一个文本文件用于编辑源程序代码。
图7 新建文本文件
6、新建的文本文件需要保存,点击菜单“File-Save AS”选项,弹出的对话框中为文件命名,并保存在工程目录中。注意:文件的后缀名必须是“.s”,这是汇编源程序的文件类型。
图8 保存并命名文本文件
7、新建并保存后的源程序文件还要导入到工程中。右键点击列表的“Source Group ASM”选项,在弹出菜单中选择
“Add Files to Group ‘Source Group ASM’”选项。在弹出的文件浏览对话框中选择Asm01.s文件并点击“Add”按钮。之后,程序文件被加入到源程序组中。
图9 添加程序文件
8、源程序文件添加程序代码如下:
;**********************************************************************
; NAME: Asm01.s
*
; Author: FeiXiang / TCU Computer and Information Project College
*
; Desc: ARM instruction examples
*
; History: 2015.9.15
*
;**********************************************************************
;/*------------------------------------------------------------------ */
;/* constant define*/
;/*---------------------------------------------- --------------*/
x EQU 45 ; x=45
y EQU 64 ; y=64/
;/*---------- ----------------------------------------------*/
;/* code */
;/*-------------------------------------------------------- */
AREA text,CODE,READONLY ; code start */
start
mov r0, #x ; put x value into R0
ldr sp, =0;put imme 0value into SP
st
文档评论(0)