嵌入式系统实验报告
(修订版)
20 – 20 第 学期
赵成,张克新 编著
院 系:
姓 名:
专 业:
学 号:
电子通信工程系
20##年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中包括 和 两个软件组件。在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环境的安装步骤;能够配置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开发嵌入式系统的方法。
二、实验内容
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时用到的各个指令。
[root@localhost ~]# cd /home
[root@localhost home]# cd zxnet
[root@localhost zxnet]# ls
skyeye-1.2.4 skyeye-1.2.4_Rel.tar.gz skyeye-testsuite-2.3.tar.bz2
[root@localhost zxnet]# tar xzvf skyeye-1.2.4_Rel.tar.gz
解压的最终结果如下:
skyeye-1.2.4/arch/mips/common/icache.c
skyeye-1.2.4/arch/mips/common/cpu.h
skyeye-1.2.4/arch/mips/common/instr.h
skyeye-1.2.4/arch/mips/common/emul.c
skyeye-1.2.4/arch/mips/common/interrupt.c
skyeye-1.2.4/arch/mips/common/emul.h
skyeye-1.2.4/arch/mips/common/exception.c
skyeye-1.2.4/arch/mips/common/cache.h
skyeye-1.2.4/arch/mips/mach/
skyeye-1.2.4/arch/mips/mach/skyeye_mach_nedved.c
skyeye-1.2.4/arch/mips/mach/au1000.h
skyeye-1.2.4/arch/mips/mach/skyeye_mach_au1100.c
skyeye-1.2.4/binary/
skyeye-1.2.4/binary/README显示README表示解压成功。
对SKYEYE解压之后的源代码的编译过程如下:
[root@localhost zcnet]# ls
skyeye-1.2.4 skyeye-1.2.4_Rel.tar.gz skyeye-testsuite-2.3.tar.bz2
[root@localhost zcnet]# cd skyeye-1.2.4
[root@localhost skyeye-1.2.4]# ls
arch ChangeLog dbct LICENSE Makefile README TODO
binary COPYING device MAINTAINERS misc REPORTING-BUGS utils
[root@localhost skyeye-1.2.4]#make
gcc -g -O2 -D_FILE_OFFSET_BITS=64 -DSTANDALONE -DDEFAULT_INLINE=0 -DMODET -DMODET -I arch/arm -I arch/arm/common -I arch/arm/common/mmu -I arch/arm/mach -I arch/bfin/common -I arch/bfin/mach -I arch/coldfire/common -I arch/ppc/common -I device -I device/net -I device/lcd -I device/flash -I device/uart -I device/nandflash -I utils -I utils/share -I utils/main -I utils/config -I utils/debugger -DARM -I. -DNO_LCD -o binary/skyeye binary/skyeye.o \
--start-group -Lbinary -larm -ldev -lutils -lbfin -lcoldfire -lppc -lmips -lbfd -liberty --end-group -lm
****
**** The binary file located at 'binary/skyeye', enjoy it.
****
显示上述现象表示编译已经成功。
2.使用tar指令解压SKYEYE的测试工具包skyeye-testsuite-2.3.tar.bz2,再使用相关指令进入ARM S3C2410A的测试目录,使用cat指令查看skyeye.conf的内容。
列出上述实验过程的具体指令。
对SKYEYE的测试工具包skyeye-testsuite-2.3.tar.bz2解压的部分显示过程如下:
[root@localhost ~]# cd ..
[root@localhost zcnet]# tar -xjvf skyeye-testsuite-2.3.tar.bz2
skyeye-testsuite-2.3/linux/ep9312/2.6.x/
skyeye-testsuite-2.3/linux/ep9312/2.6.x/vmlinux
skyeye-testsuite-2.3/linux/ep9312/2.6.x/skyeye_dbct.conf
skyeye-testsuite-2.3/linux/ep9312/2.6.x/skyeye.conf
skyeye-testsuite-2.3/linux/ep9312/2.6.x/initrd.img
skyeye-testsuite-2.3/linux/cs89712/
skyeye-testsuite-2.3/linux/cs89712/vmlinux
skyeye-testsuite-2.3/linux/cs89712/skyeye_dbct.conf
skyeye-testsuite-2.3/linux/cs89712/readme
skyeye-testsuite-2.3/linux/cs89712/skyeye.conf
skyeye-testsuite-2.3/linux/cs89712/initrd.img
skyeye-testsuite-2.3/linux/auto_test
skyeye-testsuite-2.3/linux/initrd.img
进入ARM S3C44B0的测试目录并使用CAT指令查看skyeye.conf的内容如下:
[root@localhost zcnet]# cd skyeye-testsuite-2.3
[root@localhost skyeye-testsuite-2.3]# ls
linux rtems u-boot uClinux
[root@localhost skyeye-testsuite-2.3]# cd u-boot
[root@localhost u-boot]# ls
at91rm9200 ep7312 pxa255 s3c44b0 smdk2410
[root@localhost u-boot]# cd s3c44b0
[root@localhost s3c44b0]# ls
skyeye.conf u-boot
[root@localhost s3c44b0]# cat skyeye.conf
# skyeye config file for S3C44B0X
cpu: arm7tdmi
mach: s3c44b0x
# physical memory
mem_bank: map=M, type=R, addr=0x00000000, size=0x00001000
mem_bank: map=M, type=R, addr=0x00001000, size=0x001ff000
mem_bank: map=M, type=RW, addr=0x0c000000, size=0x00800000
# peripherals I/O mapping area
mem_bank: map=I, type=RW, addr=0x01c00000, size=0x00400000
# uart 0
uart: mod=stdio
# uart 1
uart: mod=pipe, desc=/dev/ttyS1
# LCD
lcd: type=s3c44b0x, mod=gtk
#net: ethmod=tuntap, hostip=10.0.0.1
#dbct: state=on
3.运行skyeye.exe程序,使用帮助查看常用的参数及相应的格式,在下面写出运行的指令及skyeye.exe的命令行参数格式。
运行skyeye.exe程序的过程如下:
[root@localhost s3c44b0]# cd ..
[root@localhost u-boot]# cd ..
[root@localhost skyeye-testsuite-2.3]# cd ..
[root@localhost zcnet]# ls
skyeye-1.2.4 skyeye-testsuite-2.3
skyeye-1.2.4_Rel.tar.gz skyeye-testsuite-2.3.tar.bz2
[root@localhost zcnet]# cd skyeye-1.2.4
[root@localhost skyeye-1.2.4]# ls
arch ChangeLog dbct LICENSE Makefile README TODO
binary COPYING device MAINTAINERS misc REPORTING-BUGS utils
[root@localhost skyeye-1.2.4]# cd binary
[root@localhost binary]# ls
[root@localhost binary]# ./skyeye –h
运行结果如下:
------------------------- SkyEye -V1.2 ---------------------------
Usage: SkyEye [options] -e program [program args]
Default mode is STANDALONE mode
------------------------------------------------------------------
Options:
-e exec-file the (ELF executable format)kernel file name.
-l load_address,load_address_mask
Load ELF file to another address, not its entry.
-b specify the data type is big endian when non "-e" option.
-d in GDB Server mode (can be connected by GDB).
-c config-file the skyeye configure file name.
-h The SkyEye command options, and ARCHs and CPUs simulated.
------------------------------------------------------------------
----------- Architectures and CPUs simulated by SkyEye-------------
-------- ARM architectures ---------
at91
lpc
s3c4510b
s3c44b0x
s3c44b0
s3c3410x
ep7312
lh79520
ep9312
cs89712
sa1100
pxa_lubbock
pxa_mainstone
at91rm92
s3c2410x
s3c2440
sharp_lh7a400
ns9750
lpc2210
ps7500
imx
integrator
-------- BlackFin architectures ----
bf533
4.在skyeye-testsuite-2.3测试包提供了测试ARM S3C2410A的测试目录,配置文件选用提供的skyeye.conf,使用skyeye.exe程序仿真运行U-Boot程序及Linux内核的运行。
写出实验时的测试步骤,并简单描述U-Boot程序及Linux内核的运行效果。
过程如下:在使用skyeye.exe程序仿真运行U-Boot程序之前要先进入skyeye-testsuite-2.3中,选择u-boot,进入之后点击进入S3C44B0,将此文件夹下的skyeye.conf和u-boot拷贝到skyeye-1.2.4文件夹下的binary中。之后进行对U-Boot程序的方针过程和部分显示结果如下:
[root@localhost binary]# ./skyeye -c skyeye.conf -e u-boot
big_endian is false
arch: arm
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0
mach info: name s3c44b0x, mach_init addr 0x8062c10
uart_mod:0, desc_in:, desc_out:, converter:
uart_mod:1, desc_in:/dev/ttyS1, desc_out:, converter:
SKYEYE: use arm7100 mmu ops
exec file "u-boot"'s format is elf32-little.
load section .text: addr = 0x0c100000 size = 0x00013a04.
load section .glue_7: addr = 0x0c113a04 size = 0x00000000.
load section .glue_7t: addr = 0x0c113a04 size = 0x00000000.
load section .rodata: addr = 0x0c113a04 size = 0x000006f4.
load section .rodata.str1.4: addr = 0x0c1140f8 size = 0x0000432b.
load section .data: addr = 0x0c118424 size = 0x00000a14.
load section .u_boot_cmd: addr = 0x0c118e38 size = 0x000004c8.
not load section .bss: addr = 0x0c119300 size = 0x00004c0c .
not load section .debug_line: addr = 0x00000000 size = 0x00005ad7 .
not load section .debug_info: addr = 0x00000000 size = 0x00012e5c .
not load section .debug_abbrev: addr = 0x00000000 size = 0x00004de6 .
not load section .debug_aranges: addr = 0x00000000 size = 0x00000720 .
not load section .debug_frame: addr = 0x00000000 size = 0x00002624 .
not load section .debug_pubnames: addr = 0x00000000 size = 0x00001e1f .
not load section .debug_ranges: addr = 0x00000000 size = 0x00000698 .
not load section .debug_str: addr = 0x00000000 size = 0x00003747 .
not load section .comment: addr = 0x00000000 size = 0x000003a8 .
call ARMul_InitSymTable,kernel filename is u-boot.
start addr is set to 0x0c100000 by exec file.
U-Boot 1.2.0 (Nov 9 20## - 23:13:15)
DRAM: 16 MB
SKYEYE: WARNING: illegal write halfword to 0xaaaa of 0xaa @ 0x0
SKYEYE: WARNING: illegal write halfword to 0x5554 of 0x55 @ 0x0
SKYEYE: WARNING: illegal write halfword to 0xaaaa of 0x90 @ 0x0
## Unknown FLASH on Bank 0 - Size = 0x00000000 = 0 MB
Flash: 0 kB
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
## Booting image at 00020000 ...
Bad Magic Number
=>
如上所示的现象说明u-boot中的串行通信接口已经正常工作了,等待提示符之后输入u-boot指令。
[root@localhost binary]# ./skyeye -e vmlinux
Starting pid 19, console /dev/console: '/etc/init.d/rcS'
eth0: using half-duplex 10Base-T (RJ-45)
Welcome to
_ _____ __ __ _ _
/ \ / __ \ / \_/ \ | | |_|
/ _ \ | | | | / /\ /\ \ | | _ ____ _ _ _ _
/ /_\ \ | |__| | / / \_/ \ \| | | | _ \| | | |\ \/ /
/ /___\ \ | |__\ \ | | | || |___ | | |_| | |_| |/ \
/_/ \_\| | \_\|_| |_||_____||_|_| |_|\____|\_/\_/
ARMLinux for Skyeye
For further information please check:
http://www.skyeye.org/
BusyBox v1.4.1 (20##-02-10 01:19:06 CST) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
/bin/ash: can't access tty; job control turned off
/ $
六、遇到的问题及解决办法
一、实验目的
掌握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内核的配置、编译,掌握在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.设置启动参数
列出设置启动参数所使用的指令。
六、遇到的问题及解决办法
郑州航空工业管理学院嵌入式系统实验报告修订版20第赵成张克新编著院姓专学系名业号电子通信工程系20xx年3月制实验一ARM体系结构…
嵌入式系统设计实验报告班级学号姓名成绩指导教师1实验一11实验名称博创UP3000实验台基本结构及使用方法12实验目的1学习嵌入式…
实验报告20xx20xx学年第二学期课程名称ARM嵌入式系统原理与开发实验名称嵌入式Linux交叉开发环境建立与程序开发实验时间指…
嵌入式系统设计实验报告班级学号姓名成绩指导教师20xx061420xx061411刘群峰赵国冬孟昭林1实验一11实验名称博创UP3…
嵌入式系统实验报告学院测量与通信工程学院专业信号与信息处理学生姓名姜元学号1320xx0050指导教师董静薇一实验目的了解Boot…
重庆航天职业技术学院课程作业课程名称嵌入式系统专选班级学号姓名成绩前言嵌入式系统是基于单片机的一种升级版它是以应用为中心以计算机技…
嵌入式系统设计实验报告班级学号姓名成绩指导教师1实验一11实验名称博创UP3000实验台基本结构及使用方法12实验目的1学习嵌入式…
嵌入式系统实验报告姓名:##学号:##班级:计算机科学与技术非师范121班实验一LCD控制一、实验目的1、初步掌握液晶显示屏的使用…
嵌入式系统实验报告书院系姓名专业学号指导老师电子通信工程系蒋瑾通信工程101307313赵成实验一认识嵌入式开发平台一实验目的认识…
实验报告20xx20xx学年第二学期课程名称ARM嵌入式系统原理与开发实验名称嵌入式Linux交叉开发环境建立与程序开发实验时间指…