嵌入式系统开发环境的建立.ppt
《嵌入式系统开发环境的建立.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统开发环境的建立.ppt(94页珍藏版)》请在三一办公上搜索。
1、第5章嵌入式系统开发环境的建立,教材:嵌入式系统设计与应用作者:张思民出版:清华大学出版社,5.1 建立主机开发环境5.2 配置minicom5.3 配置NFS服务5.4 编译嵌入式Linux系统内核5.5文件系统的制作 5.6嵌入式系统开发板的烧写,第5章 嵌入式系统开发环境的建立,5.1 建立主机开发环境,5.1建立主机开发环境,构建开发环境是任何开发工作的基础,同样也是嵌入式系统开发的关键步骤。,1、交叉编译,所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。,2、安装开发环境步骤,(1)安装嵌入式系统开发交叉编译器armlinux 到/usr/local 目录下。(开发商提
2、供或网上下载)(2)修改配置文件/etc/profile,建立arm-linux-gcc的搜索路径。,(1)安装 arm-linux,在/usr/local下安装 arm-linux:嵌入式系统开发交叉编译器。这里包含arm-linux-gcc,arm-linux-g+等常用ARM交叉编译器,编译出来的可执行二进制代码只能运行在以ARM为核心处理器上。,通常由硬件开发商提供或网上下载,例5.1 配置PXA270宿主机的交叉编译环境,开发商提供的安排光盘中有二个文件包:arm-linux.tar.gz:该文件包主要提供ARM系统开发的交叉编译器;pxa270_linux.tar.bz2:该文件包
3、主要提供用于PXA270开发板的BootLoder、linux内核、文件系统、JTAG烧写工具等。,(1)将文件包复制到/usr/local/目录下,并解包:,cp arm-linux.tar.gz/usr/localcd/usr/local,(2)再将 pxa270_linux.tar.bz2 文件包复制到根目录下,并解包:,cp pxa270_linux.tar.bz2/cd/,安装完毕后,生成两个子目录,(1)在根目录下生成pxa270_linux目录:(2)在/usr/local下生成arm-linux目录:,pxa270_linux:嵌入式系统开发工作目录,存放了PXA270 Blo
4、b,Linux工程文件,包括源代码以及交叉编译好的镜像文件;各种实验例程,包括应用层程序与驱动层程序。,arm-linux:嵌入式系统开发交叉编译器。这里包含arm-linux-gcc,arm-linux-g+等常用ARM交叉编译器,编译出来的可执行二进制代码只能运行在以ARM为核心处理器上,(2)修改profile,为了我们可以在所有目录下直接使用这个工具,我们需要修改文件:vi/etc/profile在其中加入语句:pathmunge/usr/local/arm-linux/bin如下所示:rootlocalhost root#vi/etc/profile,#Path manipulati
5、onif id-u=0;then pathmunge/sbin pathmunge/usr/sbin pathmunge/usr/local/sbin pathmunge/usr/local/arm-linux/bin pathmunge/usr/X11R6/bin fiunset pathmunge,当修改文件后,保存并退出终端。rootlocalhost root#exit 重新登录终端,或运行source命令,使我们的设置生效。rootlocalhost root#source/etc/profile,修改文件后,保存并退出终端。重新登陆终端,测验交叉编译环境是否成功。arm-linux
6、-gcc v,rootlocalhost root#arm-linux-gcc-vtarget=arm-linux-host=i686-host_pc-linux-gnu-prefix=/usr/local/arm-linux-with-cpu=xscale-with-headers=/usr/local/arm-linux/arm-linux/include-disable-nls-enable-threads=posix-enable-symvers=gnu-enable-_cxa_atexit-enable-languages=c,c+-enable-shared-enable-c99-
7、enable-long-long-without-fpThread model:posixgcc,5.2 配置minicom,配置minicom窗口,宿主机与开发板通过串口连接后,在宿主机端需要通过minicom窗口控制嵌入式系统开发板的运行。配置步骤:1、用串口线正确连接宿主机与开发板2、配置minicom窗口的各项参数,1、用串口线连接宿主机与开发板,宿主机通过串口与开发板连接,2、配置minicom的各项参数,在宿主机Linux终端中输入:或输入:minicom,然后再按CTRL-A-O。,minicom s,弹出minicom设置选项菜单,串口设置,选择Serial port setu
8、p,确定串口,如果使用第1个串口,则设置串口号为:ttyS0,如果使用第2个串口,则将串口号设为ttyS1。,将串口配置为:波特率115200,8位数据位,1位停止位,没有流控。,选择Save setup as dfl,将设置保存为默认值。,5.3 配置NFS服务,NFS服务,NFS(Network File System)类似于windows中的文件共享服务。在NFS服务中,主机是被挂载(mount)端,为远端客户机提供可以访问的共享文件。主机需要配置两方面内容:设置NFS服务,允许“指定的NFS用户”使用。,开发板与主机连接好网线,1、设置NFS服务,打开NFS服务命令:setup弹出系统
9、设置选项菜单,选择System services,将nfs一项选中(出现*表示选中),2、指定NFS服务的用户,在文件“exports”中指定NFS服务的用户:使用vi,在配置文件exports中加入:其中“/linux_nfs”是共享文件目录。然后按 后输入“:”,再输入“wq”,然后回车,存储退出。,/linux_nfs*(rw),重启NFS服务,重新启动nfs服务,使设置生效:/etc/rc.d/init.d/nfs restart,3、在客户机端挂接共享目录,现在还需要将宿主机NFS服务提供的共享目录挂接到嵌入式系统开发板上。我们利用minicom作为被开发目标板的终端。,(1)进入m
10、inicom终端界面,用串口线连接宿主机和开发板,并在宿主机的终端进入到minicom界面。rootlocalhost root#minicom,打开设备电源,这时,可以所观察到的是开发板上所运行的嵌入式Linux系统的启动过程。,(2)设置开发板的IP地址:通过minicom终端界面,我们可以设置开发板的IP地址192.168.0.16:.#ifconfig etho,(3)挂载共享目录,将宿主机NFS服务共享的目录/linux_nfs挂载到开发板的/mnt目录下(假设宿主机的IP地址为):rootlinux/#mount o soft,timeo=100,rsize=1024 192.16
11、8.0.1:/linux_nfs/mnt,也可以使用下列方法挂接:,rootlinux/#mount t nfs 192.168.0.1:/linux_nfs/mnt或:rootlinux/#mount rw 192.168.0.1:/linux_nfs/mnt,经过上面的设置,就可以在嵌入式系统的开发板上使用宿主机NFS服务提供的共享目录了。在嵌入式系统开发板/mnt目录下的文件就是宿主机/linux_nfs 目录下的文件。,5.4 编译嵌入式Linux内核,5.4 编译嵌入式Linux内核,编译内核需要三个步骤,分别是:1、内核配置、2、建立依存关系、3、建立内核。,5.4.1 内核裁剪配
12、置,1、确定处理器类型 Linux内核源代码支持20多种微处理器类型,在编译之前要先确定微处理器类型。,在ARM系统文件的根目录中的Makefile里,为“ARCH”设定目标板微处理器的类型值,如:ARCH:=arm或输入命令手工进行设置:rootlocalhost linux#exprot ARCH=arm,5.4.1 内核裁剪配置,2、确定配置方法内核支持 4种不同的配置方法,每种方法是读取一个根目录下隐藏的配置文件“.config”。这 4 种方式如下。make config:基于文本的最为传统的配置界面,不推荐使用。make menuconfig:基于文本选单的配置界面,字符终端下推荐
13、使用。make xconfig:基于图形窗口模式的配置界面,Xwindow 下推荐使用。make oldconfig:自动读入“.config”配置文件,并且只要求用户设定前次没有设定过的选项。,使用广泛,【例】以 make menuconfig 为例进行S3C2410系统的内裁剪核配置。,运行make menuconfig命令#make menuconfig 弹出内核裁剪配置窗口,从该图中可以看出,Linux 内核允许用户对其各类功能逐项配置,共有19类配置选项,这19类配置选项见表5.2。在menuconfig 的配置界面中是纯键盘的操作,用户可使用上下键和“Tab”键移动光标以进入相关子
14、项,图 5.10 所示为进入了“System Type-”子项的界面,该子项是一个重要的选项,主要用来选择处理器的类型。这里,带有“-”的选项表示当前项还有下一级菜单子项。,图5.10“System Type-”子项的界面,每一个选项前都有个括号,可以通过按空格键或“Y”键表示包含该选项,按“N”表示不包含该选项。在每一个选项前面都有括号。这里的括号有 3 种,即中括号、尖括号或圆括号。“”表示该选项有两种选择:*选择该项编译进内核;不编译该选项。“”表示该选项有三种选择:将该项选进内核;将该项编译成模块,但不编译进内核;不编译该选项。我们可以用空格键选择相应的选项。,在完成配置之后,就可以保
15、存退出,如图 所示。,内核编译,1、建立依赖关系 由于内核源码树中的大多数文件都与一些头文件有依赖关系,因此要顺利建立内核,内核源码目录中的每个 Makefile 就必须知道这些依赖关系。建立依赖关系往往发生在第一次编译内核的时候,它会在内核源码目录中每个子目录产生一个“.depend”文件。#make dep,内核编译,2、建立内核映像文件 建立内核映像可以使用“make zImage”或“make bzImage”,建立压缩内核映像文件。压缩的内核映像通常名为 zImage,位于“arch/$(ARCH)/boot”目录中。#make zImage#ls arch/arm/boot/Ima
16、ge install.sh Makefile zImage,生成的内核映像文件,5.5文件系统的制作,文件系统,文件系统是嵌入式Linux系统必备的一个组成部分,是系统文件和应用文件存储的地方。,1、文件目录,/bin目录下需要包含常用的用户命令,如sh等。/sbin目录要包含所有系统命令,如reboot等。/etc目录下是系统配置文件。/boot目录下是内核映像/dev目录含有系统所有的特殊设备文件/lib目录包含系统所有的库文件/mnt目录只用于挂接,可以是空目录/proc目录是/proc文件系统的主目录,包含了系统 的启动信息/usr目录含有用户选取的命令。,2、上述目录还包含适当的文件



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 开发 环境 建立

链接地址:https://www.31ppt.com/p-5970506.html