linux-2.6.9_eeliod linux内核实验,嵌入式linux开发工具及elinux系统构建实验

62e50291a81fc54b507f33cb80033297.gif 嵌入式linux开发工具及elinux系统构建实验

(31页)

f2f119d1feb7189cbe93a7330ce53796.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

14.90 积分

实验二 eLinux系统构建实验,安全注意事项,注意不要烧毁ADS开发板 禁止带电插拔串口 禁止上电中用手触摸电路板 注意不要滴水在ADS开发板 注意不要将物品放在电路板上 按复位键和开关电源时要小心谨慎,第一部分:嵌入式Linux开发工具的使用,实验目的,了解嵌入式Linux开发环境配置与使用方法; 了解Makefile的基本概念和基本结构; 初步掌握编写Makefile的方法及应用程序的编译; 熟悉嵌入式Linux交叉编译环境的创建与使用方法;,实验内容,1、熟悉RedHat虚拟机的使用,Window环境与虚拟机Linux环境的文件共享、Linux基本操作; 2、使用命令行的方式手动编译程序; 3、利用 GNU make 自动编译应用程序; 4、多个.c文件的编译; 5、嵌入式Linux交叉编译环境的创建与使用。,实验步骤(1),1、熟悉RedHat虚拟机的使用方法; Window环境与虚拟机Linux环境的文件共享、Linux基本操作等 2、使用命令行的方式手动编译程序 利用文本编辑器创建hello.c文件(文本编辑器使用gedit或vi等) 手动编译hello应用程序,运行hello并查看运行结果。 修改hello.c文件,重新手动编译应用程序。 删除hello.o和hello文件,实验步骤(2),3、利用 GNU make 自动编译应用程序 利用文本编辑器创建一个Makefile文件,并将其保存到与hello.c相同的目录下。 # makefile test for hello program #written by Emdoor CC=gcc CFLAGS= all: hello hello: hello.o $(CC) $(CFLAGS) hello.o –o hello hello.o: hello.c $(CC) $(CFLAGS) –c hello.c –o hello.o clean: rm –rf hello *.o,实验步骤(3),利用make命令编译程序,运行hello并查看运行结果。 执行make clean命令 修改hello.c文件,重复第(2)、(3)步操作,观察所生成的文件及运行结果。,实验步骤(4),重新编辑makefile文件(斜红色表示修改部分) # makefile test for hello program #written by Emdoor CC=gcc CFLAGS= OBJS=hello.o all: hello hello: $(OBJS) $(CC) $(CFLAGS) $^ -o $@ hello.o: hello.c $(CC) $(CFLAGS) –c $ -o $@ clean: rm –rf hello *.o,实验步骤(5),重复第2,3步操作,查看并记录所生成的文件和运行的结果。比较这两种操作,同时指出$^ 、$@、$在上述Makefile中的含义。,实验步骤(6),4、多个.c文件的编译 创建文件hello1.c、hello2.c、hello.h和makefile //hello1.c //written by Emdoor #include int main() { printf(“Welcome Emdoor!\n“); test2(); return 1; },实验步骤(7),//hello2.c //written by Emdoor #include “hello2.h“ #include void test2(void) { printf(“Welcome Emdoor! –hello2\n“); } //hello2.h //written by Emdoor void test2(void);,实验步骤(8),# makefile test for multi files program #written by Emdoor CC=gcc CFLAGS= OBJS=hello1.o hello2.o all: hello hello: $(OBJS) $(CC) $(CFLAGS) $^ -o $@ hello1.o: hello1.c $(CC) $(CFLAGS) –c $ -o $@ hello2.o: hello2.c $(CC) $(CFLAGS) –c $ -o $@ clean: rm –rf hello *.o,实验步骤(9),利用make命令编译程序,运行hello并查看运行结果。 执行make clean命令 修改hello.c文件,重复第(2)、(3)步操作,观察所生成的文件及运行结果。,实验步骤(10),重新编辑makefile文件( 斜红色表示修改部分) # makefile test for multi files program #written by Emdoor CC=gcc CFLAGS= CFILES=$(wildcard *.c) OBJS=$(CFILES:%.c=%.o) all: hello hello: $(OBJS) $(CC) $(CFLAGS) –o hello $(OBJS) .c.o: $(CC) –c $ clean: rm –rf hello *.o,实验步骤(11),重复第2步操作,查看所生成的文件和运行的结果, 并观察wildcard、.c.o的含义和变量CFILES代表的内容。,5、嵌入式Linux交叉编译环境的创建与使用 利用所提供的arm-ToolChain文件xscalev1_010001.tar.gz,在/opt目录下创建交叉编译环境,并设置系统查找路径。 根据前面实验2、3、4中的程序代码,修改编译器,编译生成arm linux平台下可以运行的文件。 利用file 命令查看文件属性。,实验步骤(12),第二部分:嵌入式Linux Bootloader及eLinux系统构建,实验目的,了解BootLoader的基本概念和框架结构 了解BootLoader引导操作系统的过程 掌握bootloader程序的编译与使用方法 掌握eLinux系统构建方法,实验内容,bootloader程序的编译和下载 内核和文件系统的编译和下载 实验分析bootloader程序的实现原理和结构 嵌入式linux环境下的开发工具使用,包括make、gcc、超级终端等 基于PXA270开发板构建eLinux系统。,实验步骤,阅读“Linux实验上机指导书”中有关bootloader的内容,以及课件相关内容,熟悉bootloader源代码的框架结构; 实验箱连线,包括仿真器、串口线、电源等; 打开VMWare虚拟机并登陆到Linux 系统。(用户名:emb 密码:embedded),实验步骤,转换到/home/emb目录下(命令:cd /home/emb );在当前目录下创建一个自己的目录,例如tmptest;命令:mkdir tmptest 将bootloader源代码(Boot-XSBase270_010005.tar.gz)上传到自己的目录下(通过文件共享方式) 输入tar xzvf Boot-XSBase270_010005.tar.gz,将源代码解压 输入“make” 编译bootloader程序,成功的话则生成文件:boot,则就是bootloader的可执行程序,将其下载到本地计算机待用。,实验步骤,编译内核和构建文件系统,(操作过程参见讲义第五讲“嵌入式Linux开发基础”),并下载到本地计算机待用 另外,也可以使用实验参考资料中Image目录中的文件:内核(zImage_e24qt)、文件系统(rootfs270qt_24.img),实验步骤,利用Flash烧写软件将boot文件烧写到Flash 打开程序-附件-通讯工具-超级终端,根据电脑的实际接口选择Com1或com2,端口配置为:Rate:115200;Data Bits:8;Parity:无;Stop Bits:1;Flow Control:无 超级终端用于开发板上的嵌入式linux系统的信息界面,实验步骤,打开C:\Cisco TFTP Server\TFTPServer.exe软件,用于通过网线烧写内核和文件系统。 此时重启开发板电源,烧写到开发板boot将开始运行,按“空格键”进入bootloader的下载模式,界面如下:,实验步骤,输入“0”,回车,并根据本机的IP地址配置tftp服务器IP地址:(设本机ip:218.192.169.4) set myipaddr 218.192.169.5 set destipaddr 218.192.169.4 用提供的直连网线连接开发板和pc机,并将要烧写的内核和文件系统复制到C:\Cisco TFTP Server\tftp目录; 在超级终端中输入:tftp zImage_e24qt kernel回车,此时开始传输内核镜像文件,完成后输入:flash kernel回车开始烧写内核; 在超级终端中输入:tftp rootfs270qt_24.img root 回车,此时开始传输文件系统镜像文件,完成后输入:flash root回车开始烧写文件系统;,实验步骤,此时嵌入式linux 的bootloader、内核、文件系统均已烧写到开发板,重启开发板电源,开发板的linux系统就可以正常启动了,在系统登陆用户中输入“root”,系统就登陆到linux 系统了。,实验步骤,编写简单应用程序,例如“helloworld.c” ,并进行交叉编译(arm-linux-gcc helloworld.c -o hello),将可执行文件下载到本机windows系统的目录下。 在超级终端中输入:cd /tmp,然后点击菜单发送-传送文件,选择hello文件将其下载到cd /tmp目录。 运行hello:./hello; 如果没有权限则修改权限:chmod +x hello,实验注意事项和要求,程序要自己完成,自己动手才有收获 每个小组在实验室的位置固定 PC启动到Windows操作系统 不要乱删机器内的东西 建立自己的路径,小组用到的资料和程序都放在自己路径下,实验参考资料,Linux下BootLoader实验 的实验手册 BootLoader源代码 用户手册:Intel PXA27x Processor Family Developer's Manual.pdf EELoid实验系统电路图: 底板:EELiod_EDR_V3.pdf 主板:EELiod_Moudle_V3_0.pdf Banyan仿真器使用文档 相关课件, 关 键 词: 嵌入式 linux 开发 工具 elinux 系统 构建 实验

524d6daf746efaa52c3c71bbfe7ba172.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

关于本文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值