完整ARM嵌入式系统实验报告

时间:2024.4.5

郑州航空工业管理学院

嵌入式系统实验报告

(修订版)

20 – 20  学期

赵成,张克新 编著

院  系:           

姓  名:           

专  业:           

学  号:           

电子通信工程系

20##年3月制


实验一 ARM体系结构与编程方法

一、实验目的

  了解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中包括                                     两个软件组件。在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 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验分析

       1.查看实验设备中配备的PC机,将下列硬件型号填写正确:

l  CPU型号:                

l  内存大小:                 

l  硬盘空间:                  

      根据实验的实际操作,将下列软件版本号填写正确:

l  VMWARE:                           

l  Linux系统:                           

l  Windows系统:                        

2.在VMWARE软件中安装RHEL4虚拟机时,出现网络连接方式的设置界面,如下图,提供了四个选项:桥接(bridged networking)、NAT(Network Address Translation)、host-only及无需连接。应该选择哪种方式?并解释其他方式的特点。

图 设置网络连接方式

3.根据在Linux系统中的实际操作方法,按实验步骤简要说明Samba服务的设置与测试过程。

4.参考教材中的实践指导部分,在Linux系统环境中安装VMWARE Tools软件,观察安装过程中的交互提示。安装成功后,系统给出了什么提示信息?怎样从VMWARE的VM菜单中设置Windows-Linux共享功能?

六、遇到的问题及解决办法


实验三 Linux RHEL AS4开发基础

一、实验目的

熟悉Linux操作系统开发环境,掌握Linux操作系统中的基本操作命令;掌握Vi编辑器的使用;掌握GCC工具的使用;掌握make及Makefile文件的使用。

掌握建立嵌入式交叉编译环境的方法。

二、实验内容

1. 在Linux操作系统中执行常用的文件命令、目录命令、多用户命令与安全性命令以及其它常用命令;

2. 使用Vi编辑器建立一个hello.c源文件,并存放在指定目录中;

3. 使用GCC工具编译hello.c源文件,并在计算机上执行得到的hello可执行程序;

4. 使用Vi编辑器建立一个Makefile文件,存放在指定目录中。使用make命令重新编译hello.c源文件;

5. 建立嵌入式交叉编译环境;

6. 使用嵌入式交叉编译工具重新编译hello.c源文件,并使用readelf命令查看得到的hello可执行程序的文件头信息;

三、预备知识

  了解Linux操作系统的基本操作方法;了解嵌入式系统基本的开发方法。

四、实验设备

1. 硬件环境配置

计算机:Intel(R) Pentium(R) 及以上

内存:1GB及以上

实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器

2. 软件环境配置

操作系统:Microsoft Windows XP Professional Service Pack 2

虚拟机:VMware WorkStation 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验步骤

1.Shell指令练习

打开Terminal窗口,使用su指令切换到root用户,使用echo指令在屏幕上显示“Experiment 1 on my ARM Course from dztx, zzia.\n Now, Go Go Go!”。

使用pwd指令查看当前路径,使用cd指令切换到/home目录下,再使用ls指令浏览该目录,使用mkdir指令在当前路径下建立zcnet目录及zzia目录,随即使用rmdir指令删除zzia目录。

将当前路径下的readme.txt使用cp指令复制到/home/zcnet目录中,然后,使用cd指令切换进入/home/zcnet目录中,使用ls指令查看readme.txt是否存在。使用mv指令将readme.txt重命名为demo.txt,再使用cat指令查看,然后,使用rm指令将demo.txt删除。

使用who指令、finger指令查看当前用户的登陆信息,使用time指令、data指令显示系统的时间、日期。

将上面指令练习中用到的指令进行分类。

文件命令:

目录命令:

多用户命令与安全性命令:

其它常用命令:

2.使用VI编辑器编写hello.c源代码,并存放在/home/zcnet目录中。然后,使用GCC编译hello.c源代码,并在计算机上运行得到的相应可执行程序。

3.使用VI编辑器编写编译上述hello.c的Makefile源代码,并存放在/home/zcnet目录中。然后,使用make指令编译hello.c源代码,并在计算机上运行得到的相应可执行程序。

4.用Shell指令依次列出实验中嵌入式交叉编译环境的建立步骤,并写出测试安装效果的指令。

使用嵌入式交叉编译工具重新编译hello.c源文件,并使用readelf命令查看得到的hello可执行程序的文件头信息。

使用chmod指令设置hello为可执行程序,在PC机上再次运行hello程序,观察执行情况,并给出相关的分析。

六、遇到的问题及解决办法


实验四 嵌入式系统仿真软件SKYEYE的应用

一、实验目的

熟悉使用嵌入式系统仿真软件SKYEYE开发嵌入式系统的方法。

二、实验内容

1. 安装嵌入式系统仿真软件SKYEYE-1.2.4版本;

2. 安装SKYEYE的测试工具包skyeye-testsuite-2.3.tar.bz2;

3. 使用SKYEYE的配置文件skyeye.conf并测试SKYEYE的执行;

三、预备知识

  了解电路专业相关的仿真软件;了解SKYEYE软件基本的应用方法。

四、实验设备

1. 硬件环境配置

计算机:Intel(R) Pentium(R) 及以上

内存:1GB及以上

实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器

2. 软件环境配置

操作系统:Microsoft Windows XP Professional Service Pack 2

虚拟机:VMware WorkStation 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验步骤

       1.根据实际的实验操作过程,列出在安装嵌入式系统仿真软件SKYEYE-1.2.4时用到的各个指令。

    2.使用tar指令解压SKYEYE的测试工具包skyeye-testsuite-2.3.tar.bz2,再使用相关指令进入ARM S3C2410A的测试目录,使用cat指令查看skyeye.conf的内容。

       列出上述实验过程的具体指令。

       3.运行skyeye.exe程序,使用帮助查看常用的参数及相应的格式,在下面写出运行的指令及skyeye.exe的命令行参数格式。

       4.在skyeye-testsuite-2.3测试包提供了测试ARM S3C2410A的测试目录,配置文件选用提供的skyeye.conf,使用skyeye.exe程序仿真运行U-Boot程序及Linux内核的运行。

       写出实验时的测试步骤,并简单描述U-Boot程序及Linux内核的运行效果。

六、遇到的问题及解决办法

实验五 U-Boot的编译与仿真

一、实验目的

掌握U-Boot的编译,掌握在Skyeye环境下调试U-Boot的方法

二、实验内容

1. 编译引导程序U-Boot;

2. 在Skyeye环境下调试U-Boot;

3. 练习U-Boot的常用命令;

三、预备知识

  了解Bootloader程序的原理;了解U-Boot的常用命令。

四、实验设备

1. 硬件环境配置

计算机:Intel(R) Pentium(R) 及以上

内存:1GB及以上

实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器

2. 软件环境配置

操作系统:Microsoft Windows XP Professional Service Pack 2

虚拟机:VMware WorkStation 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验步骤

       1.根据实际的实验操作过程,编译U-Boot,并列出编译U-Boot时用到的各个指令。

    2.分析U-Boot编译完成后生成的映像文件,共有几种,分别是哪种格式。

      

       3.编写Skyeye的配置文件,在Skyeye环境下对U-Boot进行仿真,写出仿真U-Boot所使用的指令。

       4.练习U-Boot的常用命令,列出三个U-Boot的常用命令并对其功能进行描述。

六、遇到的问题及解决办法

实验六 Linux内核的配置、编译与调试

一、实验目的

掌握Linux内核的配置、编译,掌握在Skyeye环境下调试Linux内核的方法

二、实验内容

1. 配置Linux内核;

2. 编译Linux内核;

3. 在Skyeye环境下调试Linux内核;

三、预备知识

  了解Linux2.6版本内核;了解Linux内核的配置过程。

四、实验设备

1. 硬件环境配置

计算机:Intel(R) Pentium(R) 及以上

内存:1GB及以上

实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器

2. 软件环境配置

操作系统:Microsoft Windows XP Professional Service Pack 2

虚拟机:VMware WorkStation 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验步骤

       1.启动内核配置菜单,选择make menuconfig方式进行配置。

列出linux内核的配置方式及每种配置方式的特点,列出启动内核配置菜单所使用的指令。

    2.配置linux2.6版本内核,列出基本的配置项目都有哪些。

      

       3.编译Linux内核,列出编译Linux内核所使用的指令,列出编译之后生成的文件及每个文件的用途。

       4.编写Skyeye的配置文件,在Skyeye环境下对linux内核进行仿真,列出仿真所使用的指令及所需要的文件。

六、遇到的问题及解决办法

实验七 根文件系统的制作

一、实验目的

掌握BusyBox的编译与安装,掌握根文件系统的制作过程,掌握在Skyeye环境下调试根文件系统的方法

二、实验内容

1. 编译安装BusyBox;

2. 制作根文件系统;

3. 在Skyeye环境下调试根文件系统;

三、预备知识

  了解BusyBox;了解根文件系统的相关知识。

四、实验设备

1. 硬件环境配置

计算机:Intel(R) Pentium(R) 及以上

内存:1GB及以上

实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器

2. 软件环境配置

操作系统:Microsoft Windows XP Professional Service Pack 2

虚拟机:VMware WorkStation 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验步骤

       1.配置BusyBox。

列出配置BusyBox所使用的指令及配置的内容。

    2.编译与安装BusyBox,列出编译与安装BusyBox所使用的指令。

      

       3.制作根文件系统,列出根文件系统的制作过程。

       4.在Skyeye环境下对根文件系统进行仿真,观察输出的提示信息是否与文件etc/motd的内容相符。

六、遇到的问题及解决办法

实验八 嵌入式系统基础应用实作

一、实验目的

掌握向嵌入式开发板中下载U-Boot的方法,掌握Linux内核及根文件系统的烧写方法

二、实验内容

1. 向嵌入式开发平台下载U-Boot;;

2. 向嵌入式开发平台烧写Linux内核;

3. 向嵌入式开发平台烧写根文件系统;

三、预备知识

  了解U-Boot下载过程中所用到的工具;了解内核及根文件系统的烧写过程,。

四、实验设备

1. 硬件环境配置

计算机:Intel(R) Pentium(R) 及以上

内存:1GB及以上

实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器

2. 软件环境配置

操作系统:Microsoft Windows XP Professional Service Pack 2

虚拟机:VMware WorkStation 7

Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)

五、实验步骤

1.查看Linux系统对mtd_nand Flash存储设备的分区信息。分区信息位于:arch/arm/plat-s3c24xx/common-smdk.c 或者arch/arm/mach-s3c2410/common-smdk.c源代码中。

    2.安装并口驱动

l  首先将并口驱动目录下的GIVEIO.SYS文件复制到C:\WINDOWS\system32\drivers目录下面;

l  然后打开控制面板里的添加硬件,选择“是,我已经连接了此硬件”;

l  下一步,选择添加新的硬件设备;

l  下一步,选择“安装我手动从列表选择的硬件”;

l  下一步,选择“端口(COM和LPT)”;

l  选择从磁盘安装,在路径中选择并口驱动目录下的giveio.ini文件,然后按提示一直进行下去就可以了;

l  最后打开设备管理器,在设备管理器的端口里能看到GIVEIO端口,就表示安装正常了。

       3.下载U-BOOT

使用sjf2410-s.exe下载U-BOOT程序到开发板上的存储芯片中。

列出下载U-Boot的过程及所使用的指令

       4.设置超级终端

       列出所设置超级终端的参数

    5.建立tftp服务器

运行loader目录中的tftpd32.exe程序,在windows上建立tftp服务器。

    6.烧写内核

       列出烧写内核所使用的指令。

    7.烧写根文件系统

       列出烧写根文件系统所使用的指令。

    8.设置启动参数

       列出设置启动参数所使用的指令。

六、遇到的问题及解决办法

更多相关推荐:
嵌入式系统实验报告

嵌入式系统设计实验报告班级学号姓名成绩指导教师1实验一11实验名称博创UP3000实验台基本结构及使用方法12实验目的1学习嵌入式系统开发流程2熟悉UPnet3000实验平台的核心硬件电路和外设3增加对各个外设...

嵌入式系统实验报告

实验报告20xx20xx学年第二学期课程名称ARM嵌入式系统原理与开发实验名称嵌入式Linux交叉开发环境建立与程序开发实验时间指导单位20xx年5月21日通信与信息工程学院指导教师余雪勇学生姓名学院系通信与信...

嵌入式系统实验报告

嵌入式系统设计实验报告班级学号姓名成绩指导教师20xx061420xx061411刘群峰赵国冬孟昭林1实验一11实验名称博创UP3000实验台基本结构及使用方法12实验目的1熟悉UPnet3000实验平台的核心...

嵌入式系统实验报告

嵌入式系统实验报告学院测量与通信工程学院专业信号与信息处理学生姓名姜元学号1320xx0050指导教师董静薇一实验目的了解BootLoader的基本概念和框架结构了解BootLoader引导操作系统的过程掌握b...

20xx嵌入式系统实验报告书

郑州航空工业管理学院嵌入式系统实验报告书院系姓名专业学号指导老师电子通信工程系通信工程10赵成电子通信工程系20xx年11月制1实验一认识嵌入式开发平台一实验目的认识UPNETARM2410S嵌入式开发平台了解...

嵌入式系统实验报告

实验报告内容实验题目循环轮流点亮8个发光二极管每个状态时间间隔200毫秒1000毫秒实验目的掌握KEIL软件编辑软件和Proteus软件的基本操作了解电路的基本实现以及74HC573芯片相关原理实验要求用KEI...

ARM嵌入式系统实验报告

ARM嵌入式系统实验报告专业班级电子信息工程1101班姓名学号20xx1186020指导老师韩洁华中科技大学武昌分校20xx年5月21日第一次实验通用IO口实验一实验内容控制嵌入式试验箱上的LED点亮熄灭可以结...

《嵌入式系统与开发》实验报告——B120xx909

南京邮电大学计算机学院嵌入式系统与开发实验报告构建嵌入式Linux系统实验报告学生姓名学号专业班级指导教师孙国梓完成时间南京邮电大学计算机学院嵌入式系统与开发实验报告实验2构建嵌入式Linux系统一实验目的理解...

嵌入式系统实验报告

本科实验报告实验名称嵌入式系统实验嵌入式系统实验报告一实验原理本实验使用xmanagerenterprise软件来连接老师配置好的linux服务器以完成实验中使用linux完成编译和仿真运行一个嵌入式系统实验中...

嵌入式系统课程设计报告模版

XXXX课程设计报告课程名称嵌入式系统设计题目专业班级学生姓名学生学号指导老师二一三年一月八日目录1概述111背景112设计目标213开发环境314关键技术52概要设计821软件结构822各功能模块设计103详...

Linux嵌入式系统实验报告一

Linux嵌入式系统实验报告一一实验目的通过编写fork和exec等系统调用的程序加深对系统进程及其控制的了解二实验原理fork后父子进程会同步运行但父子进程的返回顺序是不确定的设两个变量global和test...

嵌入式系统技术实验报告

南京理工大学嵌入式系统实验报告指导老师姓名学院系班级学号实验日期实验一熟悉Linux开发环境一实验目的熟悉Linux开发环境学会基于S3C2410的Linux开发环境的配置和使用使用Linux的armv4lun...

嵌入式系统实验报告(43篇)