arm嵌入式实验报告完整版_第1页
arm嵌入式实验报告完整版_第2页
arm嵌入式实验报告完整版_第3页
arm嵌入式实验报告完整版_第4页
arm嵌入式实验报告完整版_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

今年以来我们在上级党组织的领导和区精神文明办的关心支持指导下坚持以邓小平理论和三个代表重要思想为指导认真落实科学发展观arm嵌入式实验报告完整版篇一:ARM嵌入式系统实验报告1郑州航空工业管理学院嵌入式系统实验报告 第 赵成,张克新 院 姓 专 学 系: 名: 业: 号: 电子通信工程系 周振宇 物联网工程 121309140 电子通信工程系XX年3月制实验一 ARM体系结构与编程方法一、实验目的了解ARM9 S3C2410A嵌入式微处理器芯片的体系结构,熟悉ARM微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握ARM指令系统,能在ADS1.2 IDE中进行ARM汇编语言程序设计。二、实验内容1ADS1.2 IDE的安装、环境配置及工程项目的建立; 2ARM汇编语言程序设计(参考附录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中包括两个软件组件。在ADS1.2中建立 ARM Executable Image(ARM可执行映像) 类型的工程,工程目标配置为 Debug;接着,还需要对工程进行 目标设置 、 语言设置 及链接器设置;最后,配置仿真环境为ARMUL仿真方式。2写出ARM汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。; 文件名: AREA XTF,CODE,READONLY 声明32位ARM指令 R0arm嵌入式实验报告完整版) ADD R0,R1,R23列写出使用LDR、STR指令的汇编程序,并在关键语句后面给出相应的注释。 AREA XTF,CODE,READONLY ;声明代码段XTFENTRY ;标示程序入口CODE32 ;声明32位ARM指令 START LDR R0,=1 ;加载数据LDR R1,=2LDR R3,=ADDR_1;载符号地址 ADD R2,R0,R1;R2R3;数据空间定义 AREA Data_1,DATA,ALIGN=2ADDR_1 DCD 0 END ;结束 4“使用多寄存器传送指令进行数据复制”汇编程序分析。 LDR R0,=SrcData ; 执行后,R0的值是 LDR R1,=DstData ; 执行后,R1的值是 LDMIA R0,R2-R9 ; LDMIA中的指令后缀IA表示传送后地址加4,R0-R2,R0+4-R3,?,R0+28-R9STMIA R1,R2-R9 ;执行后,程序实现的功能是?,R1+285在“使用查表法实现程序跳转”的汇编程序中,指令LDR PC,PC,R2采用的是什么寻址方式?作为基址的寄存器PC的值是多少?作为指令指针的PC又指向哪条指令?这个指令与流水线执行的关系是什么?(选做) 答: 1)基址加变址寻址;2)PC6通过运行及观察“使用BX指令切换处理器状态”汇编程序实验,回答ARM指令与Thumb指令之间是如何实现状态切换的?AXD Debugger调试环境中的哪个寄存器指示了ARM微处理器当前的指令状态?同时,在程序中添加从Thumb指令切换到ARM指令的代码。(选做) 答:1)BX指令使用寄存器作为参数,当32位操作数寄存器的第0位的值为1时,执行BX指令后,ARM处理器从16位半字节对齐ARM指令状态切换到32位字对齐Thumb指令状态;当32位操作数寄存器的第0位为0时,ARM处理器从Thumb指令状态切换到32位ARM指令状态。 2)CPSR的value值为nzcvqIFt_SVC时为ARM32指令状态;为nzcvqIFT_SVC时为Thumb16指令状态3) AREAXTF,CODE,READONLY ;声明代码段XTF ENTRY ;标识程序入口CODE32 ;声明32位ARM指令 SART MOV R1,#1 ;设置参数MOV R2,#2ADD R0,R1,R2 ;R0Into_ThumbMOV R5,#3MOV R6,#4ADD R4,R5,R6LDR R3, =Bach_to_ARM ;将Back_to_ARM 地址值赋给R3 ;产生字对齐的跳转地址,最低位被清除,即bit0为0BX R3 ;Branch Exchange 返回到ARM状态,此时运行在ARM指令集环境里CODE32 ;ARM状态下的子函数 Bach_to_ARMMOV R8,#3MOV R9,#4 ADD R7,R8,R9 END 7观察“微处理器工作模式切换”程序的运行,按顺序写出ARM工作模式切换过程中依次出现的工作模式,同时,通过观察回答ARM微处理器是否能从用户模式切换到特权模式?(选做) 答:1)Usr(用户)?Sys(系统)?Fiq(快中断)?Svc(管理)?Abt(终止)?Irq(中断)?Und(未定义)2)用户模式不能直接切换到其他处理模式(特权模式),特权模式可以自由切换到其他处理器模式。程序: AREA Work_mode_switch,CODE,READONLY ; ENTRY CODE32 ;入口 ;* ;now_in_svc_mode;ARM处理器默认工作在SVC模式M=10011;切换原理:CPSR最低8位I、F、T、M位用作控制位,当异常出现时改变控位。 ; ; 其中,中断标志位I、F;指令状态标志T;工作模式位M4:0 通过软件控制模式位M即可控制ARM工作状态。 ;* ;into_Sys_mod;系统模式下可运行具有特权的操作系统任务,与用户模式类似,但可以直接切换到其他模式。 MRS R0,CPSR ;复制CPSR到R0 ;into_Fiq_mode;用于高速数据传输或通道处理,Fiq异常响应时进入此模式 MRS R0,CPSR BIC R0,R0,#0x1F ORR R0,R0,#0x11 MSR CPSR_c,R0 MOV R13,#2 ;复制CPSR到R0 ;清楚R0的后5位 ;设定R0的最后5位为10001;把R0装在到CPSR,切换到快中断模式 ;对快中断模式下的R13赋值(R8-R14) BIC R0,R0,#0x1F ORR R0,R0,#0x1F MSR CPSR_c,R0 MOV R13,#1 ;清除R0的后5位 ;设定R0的最后5位为11111;把R0装在到CPSR,切换到系统模式 ;对系统模式下的R13赋值(R0-R14);into_Svc_mode;操作系统使用的保护模式,系统复位和软件中断响应时进入此模式 (R13-R14);into_Abt_mode;可用于虚拟存储及存储保护,当数据或指令预取终止时进入该模式 MRS R0,CPSR BIC R0,R0,#0x1F ORR R0,R0,#0x17 MSR CPSR_c,R0 MOV R13,#4 ;复制CPSR到R0 ;清楚R0的后5位 ;设定R0的最后5位为10111;把R0装在到CPSR,切换到数据访问终止模式 ;对快数据访问终止模式下的特有缓冲器R13赋 MRS R0,CPSR BIC R0,R0,#0x1F ORR R0,R0,#0x13 MSR CPSR_c,R0 MOV R13,#3 ;复制CPSR到R0 ;清楚R0的后5位 ;设定R0的最后5位为10011 ;把R0装在到CPSR,切换到管理模式 ;对快管理模式下的特有缓冲器R13赋值值(R13-R14);into_Irq_mode;用于通用的中断处理,Irq异常时进入此模式 (R13-R14);into_Und_mod;可用于支持硬件协处理器的软件仿真,当未定义的指令执行时进入该模式 (R13-R14) MRS R0,CPSR BIC R0,R0,#0x1F ORR R0,R0,#0x1b MSR CPSR_c,R0 MOV R13,#6 ;复制CPSR到R0 ;清楚R0的后5位 ;设定R0的最后5位为11011;把R0装在到CPSR,切换到未定义模式 ;对未定义模式下的特有缓冲器R13赋值 MRS R0,CPSR BIC R0,R0,#0x1F ORR R0,R0,#0x12 MSR CPSR_c,R0 MOV R13,#5 ;复制CPSR到R0 ;清楚R0的后5位 ;设定R0的最后5位为10010;把R0装在到CPSR,切换到外部中断模式 ;对快外部中断模式下的特有缓冲器R13赋值篇二:XX完整ARM嵌入式系统实验报告郑州航空工业管理学院嵌入式系统实验报告(修订版)20第赵成,张克新 编著 院 姓 专 学 系: 名: 业: 号: 电子通信工程系XX年3月制实验一 ARM体系结构与编程方法一、实验目的了解ARM9 S3C2410A嵌入式微处理器芯片的体系结构,熟悉ARM微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握ARM指令系统,能在ADS1.2 IDE中进行ARM汇编语言程序设计。二、实验内容1ADS1.2 IDE的安装、环境配置及工程项目的建立; 2ARM汇编语言程序设计(参考附录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中包括两个软件组件。在ADS1.2中建立 类型的工程,工程目标配置为 ;接着,还需要对工程进行、及链接器设置;最后,配置仿真环境为 仿真方式。2写出ARM汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。; 文件名:3列写出使用LDR、STR指令的汇编程序,并在关键语句后面给出相应的注释。4“使用多寄存器传送指令进行数据复制”汇编程序分析。LDR R0,=SrcData ; 执行后,R0的值是LDR R1,=DstData ; 执行后,R1的值是 LDMIA R0,R2-R9 ; LDMIA中的指令后缀IA表示 ; STMIA R1,R2-R9 ; 执行后,程序实现的功能是 ; 5在“使用查表法实现程序跳转”的汇编程序中,指令LDR PC,PC,R2采用的是什么寻址方式?作为基址的寄存器PC的值是多少?作为指令指针的PC又指向哪条指令?这个指令与流水线执行的关系是什么?(选做) 6通过运行及观察“使用BX指令切换处理器状态”汇编程序实验,回答ARM指令与Thumb指令之间是如何实现状态切换的?AXD Debugger调试环境中的哪个寄存器指示了ARM微处理器当前的指令状态?同时,在程序中添加从Thumb指令切换到ARM指令的代码。(选做) 7观察“微处理器工作模式切换”程序的运行,按顺序写出ARM工作模式切换过程中依次出现的工作模式,同时,通过观察回答ARM微处理器是否能从用户模式切换到特权模式?(选做) 六、遇到的问题及解决方法 实验二 VMWARE虚拟机与Linux环境的建立一、实验目的熟悉嵌入式系统开发环境的建立,掌握VMWARE-Linux环境的安装步骤;能够配置Samba服务、设置VMWARE虚拟机共享功能,学会Windows系统环境与Linux系统环境共享资源的基本方法。二、实验内容1在Windows系统环境中安装VMWARE7.0虚拟机软件; 2在VMWARE7.0虚拟机中安装Linux RHEL AS4操作系统; 3设置VMWARE虚拟机提供的共享功能; 4在Linux系统中建立Samba服务;三、预备知识了解VMWARE、VirtualBox、Virtual PC等虚拟机软件的相关知识;了解Linux操作系统的安装方法及基本操作方法。四、实验设备1. 硬件环境配置计算机:Intel(R) Pentium(R) 及以上 内存:1GB及以上实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器 2. 软件环境配置操作系统:Microsoft Windows XP Professional Service Pack 2 虚拟机:VMware WorkStation 7Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)五、实验分析 1查看实验设备中配备的PC机,将下列硬件型号填写正确: ? CPU型号: ? 内存大小: ? 硬盘空间:根据实验的实际操作,将下列软件版本号填写正确:? VMWARE:? Linux系统:? Windows系统:2在VMWARE软件中安装RHEL4虚拟机时,出现网络连接方式的设置界面,如下图,提供了四个选项:桥接(bridged networking)、NAT(Network Address Translation)、host-only及无需连接。应该选择哪种方式?并解释其他方式的特点。图 设置网络连接方式3根据在Linux系统中的实际操作方法,按实验步骤简要说明Samba服务的设置与测试过程。4参考教材中的实践指导部分,在Linux系统环境中安装VMWARE Tools软件,观察安装过程中的交互提示。安装成功后,系统给出了什么提示信息?怎样从VMWARE的VM菜单中设置Windows-Linux共享功能? 六、遇到的问题及解决办法 篇三:ARM嵌入式实验报告完整篇 ARM嵌 入 式 系 统 实验报告 学 班学生姓名 级 号 刘宝雨 测控1002班 10401600244电气与信息工程学院XX年 4 月 20 日目录目录.1实验一 ARM汇编指令实验1.2一、实验目的.2二实验设备.2三实验内容.2四实验原理.2五实验操作步骤.2六实验报告.10 实验二 ARM汇编指令实验210一、实验目的.10二实验设备10三实验内容.10四实验原理.10五实验操作步骤11六实验报告.18 实验三 会编与C语言的相互调用实验18一、实验目的,.18二实验设备,.18三实验内容,18四实验原理,19五实验操作步骤,.20六实验报告,.22实验一 ARM汇编指令实验1一、实验目的1初步学会使用Embest IDE for ARM 开发环境及ARM软件模拟器;2通过实验掌握简单ARM汇编指令的使用方法。二实验设备1硬件:PC机;2软件:Embest IDE XX集成开发环境。Windows98/XX/NT/XP。三实验内容1熟悉开发环境的使用,并使用LDR/STR和MOV等指令访问寄存器或存储单元。2使用ADD/SUB/LSL/LSR/AND/ORR等指令,完成基本数学/逻辑运算。四实验原理ARM处理器共有37个寄存器:31个通用寄存器,包括程序计数器(PC),这些寄存器都是32位;6个状态寄存器,这些寄存器也是32位,但只使用了其中的12位。1ARM通用寄存器通用寄存器(R0R15)可分为3类,即不分组寄存器R0R7分组寄存器R8R14程序计数器R15。2存储器格式ARM体系结构将存储器看作是从零地址开始的字节的线性组合。字节03存放第一个字,字节47存放第2个字,以此类推。ARM体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。3GNU基础知识Embest IDE集成了GNU汇编器as、编译器gcc和链接器ld。因此,编写程序要符合CNU的语法和规则。关于asgcc和ld的具体使用,请参照Embest IDE所带的电子文档ProgRef.chm。五实验操作步骤1. 实验A(1)新建工程:先建立一个实验文件夹,如EDK07101001_asm1。运行Embest IDE集成开发环境,选择FileNew Workspace菜单项,弹出一个对话框,按照图1.1输入工程名asm1_a等相关内容。单击OK按钮,将创建一个新工程,并同时创建一个与工程名相同的工作区。此时在工作区窗口将打开该工作区和工程。图1.1 新建工作区(2) 建立源文件:选择FileNew菜单项,弹出一个新的、没有标题的文本编辑窗口,输入光标位于窗口中第一行,按照实验参考程序编辑输入源文件代码。编辑完后,保存文件asml_a. s。(3)添加源文件:选择ProjectAdd To ProjectFile项,或单击工程管理窗口中的相应右键快捷菜单命令,打开文件选择对话框,在工程目录下选择刚才建立的源文件asml_a.s。图1.2 新的工作区处理器设置(4)基本设置:选择ProjectSettings菜单项,或按下快捷键Alt+F7,弹出工程设置对

温馨提示

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

评论

0/150

提交评论