嵌入式系统 实验报告 南邮

实 验 报 告

( 2011 / 2012 学年 第 二 学期)?

???

课程名称

ARM嵌入式系统原理与开发

实验名称 嵌入式Linux交叉开发环境建立与程序开发 实验时间 指导单位

2012

年 6 计算机学院

月 21 日

指导教师 王诚

学生姓名 学院(系)

颜泽鑫

通信与信息工程

班级学号 B09011027

专 业 电子信息工程

实验一、熟悉Linux开发环境

实验目的:

熟悉Linux开发环境,学会基于S3C2410的Linux开发环境的配置和使用,学习使用Linux操作系统的常用命令。使用Linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程。

实验内容与要求:

使用Redhat Linux 9.0操作系统环境,安装ARM-Linux的开发库及编译器。创建一个新目录,并在其中编写hello.c和Makefile文件。学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。下载已经编译好的文件到目标开发板上运行。

学会集成环境的安装与开发。

实验设备及工具(包括软件调试工具):

硬件:UP-NETARM2410-S嵌入式实验平台、PC机Pentium 500以上, 硬盘10GB以上。

软件:PC机操作系统REDHAT LINUX 9.0+MINICOM+ARM-LINUX开发环境。

实验过程:

运行PC机上的Linux系统,进入系统后,建立工作目录,所用语句如下: [root@zxt smile]# mkdir hello [root@zxt smile]# cd hello 编写的hello.c如下: #include main() { printf(“hello world \\n”); } 要使上面的hello.c程序能够运行,必须要编写一个Makefile文件,Makefile文件定义了一系列的规则,它指明了哪些文件需要编译,哪些文件需要先编译,哪些文件需要重新编译等等更为复杂的命令。

本次实验所用的Makefile文件如下: CC= armv4l-unknown-linux-gcc EXEC = hello OBJS = hello.o CFLAGS += LDFLAGS+= –static all: $(EXEC) $(EXEC): $(OBJS) $(CC) $(LDFLAGS) -o $@ $(OBJS) clean: -rm -f $(EXEC) *.elf *.gdb *.o 使用如下语句来创建Makefile文件: [root@zxt hello]# vi Makefile 接下来,进行hello.c的编译,使用以下语句: [root@zxt hello]# make clean [root@zxt hello]# make 在宿主PC计算机上启动NFS服务,并设置好共享的目录,进入MINICOM中建立开发板与宿主PC机之间的通讯。

[root@zxt hello]# minicom [/mnt/yaffs] mount -t nfs -o nolock 192.168.0.56:/arm2410s /host 实验小结:

通过此次的实验,对于Linux操作系统有了初步的认识。通过实验,感到理论课上的不少知识所学甚浅,在实际运用中会遇到一些意想不到的问题。但是,通过进一步学习与交流,我较好的完成了这次试验。这很好的补充了我在理论课上所学到的知识,同时让我有了很好的认识。

由于我的水平有限和实验的时间较为紧张,有些细节还是了解的十分不是十分详细,对于较为复杂的编程以及Linux下的很多技巧任然知之甚少,希望能多一些这样的实践性的教学环节,让我们更好的了解书本中知识的应用。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4