arm嵌入式实验报告完整版.docx
《arm嵌入式实验报告完整版.docx》由会员分享,可在线阅读,更多相关《arm嵌入式实验报告完整版.docx(9页珍藏版)》请在冰点文库上搜索。
arm嵌入式实验报告完整版
竭诚为您提供优质文档/双击可除
arm嵌入式实验报告完整版
篇一:
ARm与嵌入式实验报告
华中科技大学文华学院
欢迎下载该文档
ARm实验
专业班级:
姓名:
学号:
指导老师:
实验日期:
20XX年6月10日
一、实验目的
1.学习使用embestIDe开发环境及ARm软件模拟器;
2.掌握简单ARm汇编指令,进一步加强对嵌入式的熟悉和了解。
二、实验设备硬件:
pc机
软件:
embestIDe开发环境三、实验内容分析及调试结果
例2:
编写程序将R2的高8位传送到R3的低8位(不考虑R3的其它位)程序代码:
..global_start.code32.text_start:
movr2,#0x08000002
movr1,r2,ror#0x18/*r2循环右移24位送给r1*/andr1,r1,#0xff/*屏蔽高24位*/movr3,#02andr3,r3,#0
orrr3,r3,r1/*将r1中的数据送到r3中*/stop:
bstop.end
运行结果分析:
(1)数据下载
(2)r2中的高8位数据送到r1中
欢迎下载该文档
(3)r1中的数据送到r3中
调试所遇到的问题及解决方法:
1.就是有时把16进制数和十进制搞混了,造成循环位数出错。
movr1,r2,ror#0x18→movr1,r2,ror#0x24
2.忘记屏蔽高位的数据,之前设置的数为(movr2,#0x08000000)就没有发现这个问题,后来修改为(movr2,#0x08000002)则为:
例3:
实现64位加法运算,要求【R2:
R1】+【R4:
R3】,结果放回【R2:
R1】中;程序代码:
.global_start.code32.text
欢迎下载该文档
_start:
movr1,#0x6fmovr2,#0x08movr3,#0x20movr4,#0x05
addsr1,r1,r3/*r1等于低32位相加,并影响标志位*/adcr2,r2,r4/*r2等于高32位相加,并加上低位进位*/stop:
bstop.end
运行结果:
(1)数据下载
(2)低位相加送到
r1
(3)、高位相加送到
r2
调试所遇到的问题及解决方法:
在这个程序中我注意到的就是低位相加影响到标志位结果是
欢迎下载该文档
因为没有溢出,没有进位,没有负数,其实当我将程序改为(movr1,#0x7f000000movr3,#0x7f000000),则会出现(crsr:
0x900000d3),没有进位标志。
就是在这一点上无法体现这是两个64位数的相加。
例5:
编写除法运算(不使用移位指令),并保留商(若不能整除则要求保留余数)
程序代码:
.global_strat.text_strat:
movr1,#65/*被除数65送到r1中*/movr3,#1/*计数*/loop:
movr0,#4/*除数4送到r0*/mulr2,r0,r3movr0,r2addr3,r3,#1
cmpr1,r0/*除数和被
除数的比较*/bhiloop/*被除数大于除数跳到loop*/subr3,r3,#2/*求得商*/movr0,#4mulr2,r0,r3movr0,r2
subr0,r1,r0/*求得余数*/stop:
bstop.end
运行结果:
(1)数据下载
欢迎下载该文档
篇二:
ARm嵌入式实验报告完整篇(修改)
《ARm嵌入式系统》
实验报告
学
班
学
生姓名级号刘宝雨测控1002班10401600244
电气与信息工程学院
20XX年4月20日
目录
目
录………………………………………………………………….1
实验一ARm汇编指令实验1...............................2
一、实验目的…………………………………………………………………………….………2
二.实验设备……………………………………………………………………………….……2
三.实验内容…………………………………………………………………………………….2
四.实验原理…………………………………………………………………………………….2
五.实验操作步骤……………………………………………………………………………….2
六.实验报告………………………………………………………………………………………………………………….10实验二ARm汇编指令实验2……………………………10
一、实验目的………………………………………………………………………...…………10
二.实验设备……………………………………………………………………………………10
三.实验内容……………………………………………………………………………..…….10
四.实验原理………………………………………………………………………….………..10
五.实验操作步骤………………………………………………………………………………11
六.实验报告…………………………………………………………………………………………………………..……..18实验三会编与c语言的相互调用实验…………………18
一、实验目的……………………………………………………………………………,……..18
二.实验设备…………………………………………………………………………,,,,,,…….18
三.实验内容…………………………………………………………………………,,,,,,,……18
四.实验原理……………………………………………………………………………,,,……19
五.实验操作步骤………………………………………………………………………,,,,,,….20
六.实验报告………………………………………………………………………,,,,,,……….22
实验一ARm汇编指令实验1
一、实验目的
1.初步学会使用embestIDeforARm开发环境及ARm软件模拟器;
2.通过实验掌握简单ARm汇编指令的使用方法。
二.实验设备
1.硬件:
pc机;
2.软件:
embestIDe20XX集成开发环境。
windows98/2000/nT/xp。
三.实验内容
1.熟悉开发环境的使用,并使用LDR/sTR和moV等指令访问寄存器或存储单元。
2.使用ADD/sub/LsL/LsR/AnD/oRR等指令,完成基本数学/逻辑运算。
四.实验原理`
ARm处理器共有37个寄存器:
31个通用寄存器,包括程序计数器(pc),这些寄存器都是32位;6个状态寄存器,这些寄存器也是32位,但只使用了其中的12位。
1.ARm通用寄存器
通用寄存器(R0~R15)可分为3类,即不分组寄存器R0~R7.分组寄存器R8~R14.程序计数器R15。
2.存储器格式
ARm体系结构将存储器看作是从零地址开始的字节的线性组合。
字节0~3存放第一个字,字节4~7存放第2个字,以此类推。
ARm体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。
3.gnu基础知识
embestIDe集成了gnu汇编器as、编译器gcc和链接器ld。
因此,编写程序要符合cnu的语法和规则。
关于as.gcc和ld的具体使用,请参照embestIDe所带的电子文档progRef.chm。
五.实验操作步骤
1.实验A
(1)新建工程:
先建立一个实验文件夹,如e\DK07101\001_asm1。
运行embestIDe集成开发环境,选择File→newworkspace菜单项,弹出一个对话框,按照图1.1输入工程名asm1_a等相关内容。
单击oK按钮,将创建一个新工程,并同时创建一个与工程名相同的工作区。
此时在工作区窗口将打开该工作区和工程。
图1.1新建工作区
(2)建立源文件:
选择File→new菜单项,弹出一个新的、没有标题的文本编辑窗口,输入光标位于窗口中第一行,按照实验参考程序编辑输入源文件代码。
编辑完后,保存文件asml_a.s。
(3)添加源文件:
选择project→AddToproject→File项,或单击工程管理窗口中的相应右键快捷菜单命令,打开文件选择对话框,在工程目录下选择刚才建立的源文件asml_a.s。
图1.2新的工作区处理器设置
(4)基本设置:
选择project→settings…菜单项,或按下快捷键Alt+F7,弹出工程设置对话框。
在工程设置对话框中,选择processor属性页,按照图1.2对目标板所用处理器进行设置。
(5)生成目标代码:
选择build→buildasm_a菜单项,或按下快捷键F7,生成目标代码。
也可以单击工具栏上相应按钮来完成。
(6)调试设置:
选择选择project→settings…菜单项,或按下快捷键Alt+F7,弹出工程设置对话框。
在工程设置对话框中,选择Remote页面,按照图1.3所示对调试设备模块进行设置。
图1.3新工作区仿真器设置
选择Debug页面,按照图1.4所示进行调试模块设置。
(a)连接相关设置(b)下载相关设置
图1.4新工作区调试器配置
(7)选择Debug→Remoteconnect连接软件仿真器,执行Download命令下载程序,并打开寄存器窗口。
(8)打开存储器窗口,观察地址0x8000~0x801F的内容,以及地址
0xFF0~0xFFF的内容。
(9)单步执行程序并观察和记录寄存器与存储器值的变化。
(10)结合实验内容和相关资料,观察程序运行,通过实验加深理解ARm指令的使用。
实验A参考程序
areablock,code,readonly
entry
xequ45;定义变量x,并赋值为45
yequ64;定义变量y,并赋值为
equstack_top,0x1000;定义栈顶0x1000
globalstart
text
_start;程序代码开始标志
moVsp,#stack_top
moVr0,#x;x的值放入R0
sTRr0,[sp];R0的值保存到堆栈
moVr0,#y;y的值放入R0
LDRr1,[sp];取堆栈中的数到R1
ADDr0,r0,r1
sTRr0,[sp]
stop
bstop;程序结束,进入死循环
end
实验A上机操作及其仿真茹下图所示:
篇三:
20XX完整ARm嵌入式系统实验报告
郑州航空工业管理学院
嵌入式系统实验报告
(修订版)
20第
赵成,张克新编著
院姓专学
系:
名:
业:
号:
电子通信工程系
20XX年3月制
实验一ARm体系结构与编程方法
一、实验目的
了解ARm9s3c2410A嵌入式微处理器芯片的体系结构,熟悉ARm微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握ARm指令系统,能在ADs1.2IDe中进行ARm汇编语言程序设计。
二、实验内容
1.ADs1.2IDe的安装、环境配置及工程项目的建立;2.ARm汇编语言程序设计(参考附录A):
(1)两个寄存器值相加;
(2)LDR、sTR指令操作;
(3)使用多寄存器传送指令进行数据复制;(4)使用查表法实现程序跳转;(5)使用bx指令切换处理器状态;(6)微处理器工作模式切换;
三、预备知识
了解ARm嵌入式微处理器芯片的体系结构及指令体系;熟悉汇编语言及可编程微处理器的程序设计方法。
四、实验设备1.硬件环境配置
计算机:
Intel(R)pentium(R)及以上;内存:
1gb及以上;
实验设备:
up-neTARm2410-s嵌入式开发平台,J-LinkV8仿真器;2.软件环境配置
操作系统:
microsoftwindowsxpprofessionalservicepack2;集成开发环境:
ARmDevelopersuite(ADs)1.2。
五、实验分析
1.安装的ADs1.2IDe中包括两个软件组件。
在ADs1.2中建立类型的工程,工程目标配置为;接着,还需要对工程进行、及链接器设置;最后,配置仿真环境为仿真方式。
2.写出ARm汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。
;文件名:
3.列写出使用LDR、sTR指令的汇编程序,并在关键语句后面给出相应的注释。
4.“使用多寄存器传送指令进行数据复制”汇编程序分析。
LDRR0,=srcData;执行后,R0的值是
LDRR1,=DstData;执行后,R1的值是LDmIAR0,{R2-R9};LDmIA中的指令后缀IA表示;sTmIAR1,{R2-R9};执行后,程序实现的功能是;5.在“使用查表法实现程序跳转”的汇编程序中,指令LDRpc,[pc,R2]采用的是什么寻址方式?
作为基址的寄存器pc的值是多少?
作为指令指针的pc又指向哪条指令?
这个指令与流水线执行的关系是什么?
(选做)
6.通过运行及观察“使用bx指令切换处理器状态”汇编程序实验,回答ARm指令与Thumb指令之间是如何实现状态切换的?
AxDDebugger调试环境中的哪个寄存器指示了ARm微处理器当前的指令状态?
同时,在程序中添加从Thumb指令切换到ARm指令的代码。
(选做)
7.观察“微处理器工作模式切换”程序的运行,按顺序写出ARm工作模式切换过程中依次出现的工作模式,同时,通过观察回答ARm微处理器是否能从用户模式切换到特权模式?
(选做)
六、遇到的问题及解决方法
实验二VmwARe虚拟机与Linux环境的建立
一、实验目的
熟悉嵌入式系统开发环境的建立,掌握VmwARe-Linux环境的安装步骤;能够配置samba服务、设置VmwARe虚拟机共享功能,学会windows系统环境与Linux系统环境共享资源的基本方法。
二、实验内容
1.在windows系统环境中安装VmwARe7.0虚拟机软件;2.在VmwARe7.0虚拟机中安装LinuxRheLAs4操作系统;3.设置VmwARe虚拟机提供的共享功能;4.在Linux系统中建立samba服务;
三、预备知识
了解VmwARe、Virtualbox、Virtualpc等虚拟机软件的相关知识;了解Linux操作系统的安装方法及基本操作方法。
四、实验设备
1.硬件环境配置
计算机:
Intel(R)pentium(R)及以上内存:
1gb及以上
实验设备:
up-neTARm2410-s嵌入式开发平台,J-LinkV8仿真器2.软件环境配置
操作系统:
microsoftwindowsxpprofessionalservicepack2虚拟机:
Vmwareworkstation7
Linux系统:
RedhatenterpriseLinuxAs4(2.6.9-5.eL)
五、实验分析
1.查看实验设备中配备的pc机,将下列硬件型号填写正确:
?
cpu型号:
?
内存大小:
?
硬盘空间:
根据实验的实际操作,将下列软件版本号填写正确:
?
VmwARe:
?
Linux系统:
?
windows系统:
2.在VmwARe软件中安装RheL4虚拟机时,出现网络连接方式的设置界面,如下图,提供了四个选项:
桥接(bridgednetworking)、nAT(networkAddressTranslation)、host-only及无需连接。
应该选择哪种方式?
并解释其他方式的特点。
图设置网络连接方式