ARM嵌入式系统实验报告

发布 2022-10-21 10:07:28 阅读 4250

郑州航空工业管理学院。

20 13 – 20 14 第 2 学期。

赵成,张克新

院系。姓名。

专业。学号。

电子通信工程系。

2023年3月制。

一、实验目的。

了解arm9 s3c2410a嵌入式微处理器芯片的体系结构,熟悉arm微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握arm指令系统,能在ads1.2 ide中进行arm汇编语言程序设计。

二、实验内容。

1.ads1.2 ide的安装、环境配置及工程项目的建立;

2.arm汇编语言程序设计(参考附录a):

1)两个寄存器值相加;

2)ldr、str指令操作;

3)使用多寄存器传送指令进行数据复制;

4)使用查表法实现程序跳转;

5)使用bx指令切换处理器状态;

6)微处理器工作模式切换;

三、预备知识。

了解arm嵌入式微处理器芯片的体系结构及指令体系;熟悉汇编语言及可编程微处理器的程序设计方法。

四、实验设备。

1. 硬件环境配置。

计算机:intel(r) pentium(r) 及以上;

内存:1gb及以上;

实验设备:up-netarm2410-s嵌入式开发平台,j-link v8**器;

2. 软件环境配置。

操作系统:microsoft windows xp professional service pack 2;

集成开发环境:arm developer suite (ads) 1.2。

五、实验分析。

1.安装的ads1.2 ide中包括 codewarrior 和 axd dubugger 两个软件组件。在ads1.

2中建立 arm executable image(arm可执行映像) 类型的工程,工程目标配置为 debug ;接着,还需要对工程进行目标设置 、 语言设置及链接器设置;最后,配置**环境为 armul **方式。

2.写出arm汇编语言的最简程序结构,然后在**段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。

文件名:

area xtf,code,readonly ;声明**段xtf

entry标识程序入口。

code32声明32位arm指令。

sart mov r1,#1设置参数。

mov r2,#

add r0,r1,r2 ;r0<--r1+r2

halt b halt死循环。

end结束程序段

3.列写出使用ldr、str指令的汇编程序,并在关键语句后面给出相应的注释。

area xtf,code,readonly ;声明**段xtf

entry标示程序入口。

code32声明32位arm指令。

start ldr r0,=1加载数据。

ldr r1,=2

ldr r3,=addr_1载符号地址。

add r2,r0,r1r2<--r0+r1

str r2,[r3r2---r3]

数据空间定义

area data_1,data,align=2

addr_1 dcd 0

end结束。

4.“使用多寄存器传送指令进行数据复制”汇编程序分析。

ldr r0,=srcdata执行后,r0的值是标号srcdata的地址。

ldr r1,=dstdata执行后,r1的值是标号dstdatad 的地址。

ldmia r0,{r2-r9ldmia中的指令后缀ia表示 increase after,即每次传送后地址加4,[r0]--r2,[r0+4]--r3,…,r0+28]--r9

stmia r1,{r2-r9执行后,程序实现的功能是 [r1]<-r2,[r1+4]<-r3,,[r1+28]<-r9

5.在“使用查表法实现程序跳转”的汇编程序中,指令ldr pc,[pc,r2]采用的是什么寻址方式?作为基址的寄存器pc的值是多少?作为指令指针的pc又指向哪条指令?

这个指令与流水线执行的关系是什么?(选做)

答: 1)基址加变址寻址;2)pc<--pc+r2],即pc中存放的是当前pc值加上寄存器r2中的内容形成的有效地址中的操作数;3)对于arm指令集,pc总是只想当前指令的下两条指令,即pc的值为当前指令的地址值加上8个字节(每条指令占4个字节)。

6.通过运行及观察“使用bx指令切换处理器状态”汇编程序实验,回答arm指令与thumb指令之间是如何实现状态切换的?axd debugger调试环境中的哪个寄存器指示了arm微处理器当前的指令状态?同时,在程序中添加从thumb指令切换到arm指令的**。

(选做)

嵌入式系统实验报告

嵌入式系统实验报告内容。第一章 arm2410cl嵌入式系统基础实验。实验一arm2410cl嵌入式教学实验系统。实验报告要求 简述嵌入式linux开发的流程。实验二。嵌入式linux开发环境的配置。实验报告要求 1 简述嵌入式linux开发环境配置的具体步骤。2 简述网络文件系统 nfs 第二章 ...

嵌入式系统实验报告

本科实验报告。1.实验原理 本实验使用xmanager enterprise软件来连接老师配置好的linux服务器,以完成实验中使用linux完成编译和 运行一个嵌入式系统。实验中使用u boot作为系统的bootloader,使一个嵌入式linux系统完成编译并模拟在另一台机器上 并执行操作。u ...

嵌入式系统实验报告

姓名 班级 学号 实验一 流水灯。实验要求 编写一个程序,是开发板上的的3个led灯按流水灯方式闪烁。实验工具 超级终端开发板,电脑。实验程序如下 汇编指令实验 定义端口e寄存器预定义。rgpbcon equ 0x56000010 rgpbdat equ 0x56000014 rgpbup equ ...