嵌入式系统实验交叉开发环境实用教案_第1页
嵌入式系统实验交叉开发环境实用教案_第2页
嵌入式系统实验交叉开发环境实用教案_第3页
嵌入式系统实验交叉开发环境实用教案_第4页
嵌入式系统实验交叉开发环境实用教案_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验七实验七嵌入式嵌入式LINUX开发开发(kif)环境的建立环境的建立 实验目的 实验内容实验设备 实验步骤(bzhu) 实验报告要求第1页/共48页第一页,共48页。实验(shyn)目的 了解嵌入式开发流程(lichng),了解开发流程(lichng)中使用的软件和硬件的安装,了解和熟悉嵌入式的软硬件平台。 了解arm-linux开发工具链的含义,学会基于S3C2410的Linux开发环境的配置和使用,熟悉Linux开发环境。使用Linux的arm-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程。第2页/共48页第二页,共48页。实验(shyn)内容 本次实

2、验硬件平台使用JX2410-1实验箱,宿主机上使用Readhat Linux 9.0操作系统环境。将硬件平台和宿主PC机通过串口线和网线连接好后,在宿主PC机上安装开发工具软件,建立交叉编译调试环境并进行配置。 利用(lyng)已经建立好的ARM-Linux的开发库及编译器,编写hello.c和Makefile文件。学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。下载已经编译好的文件到目标开发板上运行。第3页/共48页第三页,共48页。实验(shyn)设备 硬件(yn jin) JXARM9-2410嵌入式实验箱,PC机 软件 Redhat Linux 9.0开发环

3、境,ARM-Linux工具链第4页/共48页第四页,共48页。实验(shyn)步骤-11.安装及配置VMware2.安装VMware下Linux3.安装VMware tools4.配置开发环境(hunjng)配置网络配置tftp配置NFS配置MINICOM第5页/共48页第五页,共48页。实验(shyn)步骤-25.Linux开发工具安装arm-linux交叉编译工具修改配置文件设置(shzh)PATH变量,使得在任何路径下都可以使用arm-linux-gcc工具6.重新启动使设置(shzh)生效7.编写hello.c和Makefile文件8.下载已经编译好的文件到目标开发板上运行第6页/共4

4、8页第六页,共48页。串口设置(shzh)为虚拟机添加串口 1 如果你现在已经启动了Red Hat 9.0的话请先关闭系统。2 关闭后在工具栏那选择(xunz)虚拟机设置点击ADD选择(xunz)serial port 使用物理串口选择(xunz)com1 同时选择(xunz)打开电源时连接 finish退出ok3 启动虚拟机第7页/共48页第七页,共48页。为虚拟机添加(tin ji)串口设备第8页/共48页第八页,共48页。开发环境(hunjng)_开发环境(hunjng)配置配置网络,包括配置IP 地址、tftp、NFS 服务、防火墙。网络配置主要是要安装好以太网卡,对于一般常见的RTL

5、8139 网卡,REDHAT9.0 可以自动识别并自动安装好,完全不要用户(yngh)参与,因此建议使用该网卡。对于REDHAT9.0,它默认的是打开了防火墙,因此对于外来的IP 访问它全部拒绝,这样其它网络设备根本无法访问它,即无法用NFS mount 它,许多网络功能都将无法使用。因此网络安装完毕后,应立即关闭防火墙。配置NFS,在系统设置菜单中选择服务器设置菜单,再选中服务菜单,将iptables 服务的勾去掉,并确保nfs 选项选中。第9页/共48页第九页,共48页。开发(kif)环境配置_网络配置 在宿主机Linux环境(hunjng)下配置网络,包括IP地址、NFS服务、防火墙。

6、设置宿主机IP地址时,需将其地址与开发平台的IP地址设置在 同一网段内。 这里,将PC 的IP设为 。第10页/共48页第十页,共48页。开发环境(hunjng)配置_网络配置 双击设备eth0,进入以太网设置界面,可以设置地址、子网掩码和网关。 对REDHAT9.0,它默认打开了防火墙,外来(wili)IP无法用NFS mount 访问它,因此要 在安全级别设置 中关闭它。第11页/共48页第十一页,共48页。开发环境(hunjng)配置_tftp配置 TFTP是用来下载远程文件的最简单网络协议,基于 UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的

7、tftp-server支持,二是嵌入式目标系统的tftp-client支持。因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置(pizh)了。 关于tftp服务安装的问题在安装RedHat Linux时,若没有选Custom-Packages里面选择everything,导致没有安装tftp服务,可如下单独安装服务:安装tftp 的方法其中在Redhat9第3张光盘里。第12页/共48页第十二页,共48页。开发(kif)环境配置_tftp配置 在系统设置菜单中选择服务器设置菜单,再选中服务菜单,将其中(qzhng)的tftp一项选中,并去掉ipchains和ip

8、tables两项服务。然后还要选择Firewall configuration,关掉。 最后,退出setup,执行如下命令以启动TFTP服务: $service xinetd restart 配置完成后,简单测试一下TFTP服务器是否可用,即自己tftp自己,例如在宿主机上执行: $cp /home/cvtech/jx2410/images/zImage /tftpboot/ tftpget zImage 第13页/共48页第十三页,共48页。开发(kif)环境配置_tftp配置 若弹出信息说:Timed out,则表明未成功,或者用如下命令查看tftp服务是否开通: $netstat -a|

9、grep tftp 若TFTP服务器没有配置成功,需要按照(nzho)上述步骤重新检查一遍。 第14页/共48页第十四页,共48页。开发(kif)环境配置_NFS配置 在系统设置菜单中选择服务器设置菜单,再选中服务菜单,将iptables服务去掉,选中NFS。 点击系统设置- 服务器设置- NFS服务器,出 现如下界面,在 目录中填入共享 目录的路径(ljng)和主 机地址。第15页/共48页第十五页,共48页。 一些常规选项设置,保留默认值。在用户访问中,设置将远程用户当作根用户时,对于操作比较方便,但安全性较差。 配置NFS完成后,可以(ky)测试是否成功。在宿主机下自己mount自己:其

10、中是主机IP,然后到/mnt/ 目录下看是否可以(ky)列出对应jx2410目录下的所有文件和目录,如可以(ky)则说明mount成功,NFS配置成功。第16页/共48页第十六页,共48页。开发环境(hunjng)配置_NFS配置通过命令行配置NFS,如下: 编辑/etc/exports文件,设置如下: $vi /etc/exports 在该空文件中添加如下行: / (rw) 然后重新启动nfs服务(fw),刚才的设置就生效了 $/etc/init.d/nfs restart第17页/共48页第十七页,共48页。开发(kif)环境配置_NFS配置也可以手工编写/etc/exports 文件,格

11、式如下:共享目录 可以连接的主机(读写权限,其他参数(cnsh)例如:表示将本机的/jx2410 目录共享给ip 地址为的所有计算机,可以读取和写入。第18页/共48页第十八页,共48页。minicom配置(pizh) 在Linux操作系统下,使用minicom作为超级终端,因此(ync)首先必须正确配置超级终端。在宿主机端Linux下执行: 1 #minicom 2 Ctrl+A Z 再键入O 或者直接 ctrl+A O 也可以直接用#minicom -s 第19页/共48页第十九页,共48页。minicom配置(pizh)3 第一次使用时需要对串口进行配置,在该菜单下选择“Serial p

12、ort setup”,然后回车将出现如下配置菜单:参照上面的配置,相应输入左边的”A”、”B”等字符(z f)将出现配置各自参数的界面,分别配置成上述设置。第20页/共48页第二十页,共48页。minicom配置(pizh)4 设置完成后回车退出5 选择保存(bocn)save setup as df1,如下所示:6 选择exit退出串口配置第21页/共48页第二十一页,共48页。minicom配置(pizh)7 请将JXARM9-2410的UART0连接到PC机串口并将JXARM9-2410上电,在minicom中,将出现如下(rxi)所示界面: 如无法(wf)连接,请检查虚拟机设置中左边的

13、serial port对应的右侧设备状态是否已连接,物理端口是否为com1并且串没有被占用,即其他的串口终端已关掉。第22页/共48页第二十二页,共48页。利用(lyng)minicom下载文件8 启动实验(shyn)箱上的linux操作系统(可以用实验(shyn)箱上的按键7,也可以在minicom中的jx2410#后输入 run bootlinux)9 在lcd显示屏出现小企鹅后,在PC机上按ctrl+c,进入实验(shyn)箱的linux系统,此时在minicom中会出现#提示符,这是实验(shyn)箱中的linux操作系统的提示符,可以使用linux 的命令查看实验(shyn)箱中系统

14、的文件。10 按ctrl+A z打开minicom的窗口11 按S打开上传文件窗口第23页/共48页第二十三页,共48页。第24页/共48页第二十四页,共48页。Upload文件(wnjin)上传窗口第25页/共48页第二十五页,共48页。12 选择zmodem方式,按回车,打开选择文件上传窗口,找到hello(先把该文件拷到linux目录下,如果没有拷,可以再打开一个终端完成)13 按空格键选中,回车开始(kish)上传,传送完成PC机会有响铃提示14 在实验箱的当前目录下用ls会看到刚刚上传的文件。15 ./hello /运行文件16 如果系统提示权限不够,请修改文件权限。用命令chmod

15、 。17 检查输出结果第26页/共48页第二十六页,共48页。按空格键选择(xunz)要传送的文件第27页/共48页第二十七页,共48页。上传完成(wn chng)第28页/共48页第二十八页,共48页。DNW串口下载(xi zi) 串口下载没有网络下载速度快,但很方便,不需要额外的连线和设置IP。 DNW是三星公司的串口通讯工具软件,也要设置波特率、端口号等。打开configuration下的options进行配置。 配置完成选择serial port下的connect再将实验箱上电,可以看到实验箱显示信息。 选择serial port下的transmit,在打开的对话框中选择要传输(chu

16、n sh)的文件,就可以进行文件传输(chun sh)了。DNW默认串口下载的地址为0 x30200000。第29页/共48页第二十九页,共48页。第30页/共48页第三十页,共48页。开发环境(hunjng)_编译器配置安装arm-linux-gcc编译器 .tar放在windows下的任意盘中2 打开linux,用普通用户身份登录(dn l)3 打开终端,并切换到超级用户模式下 命令:su - root4 查看cross所在的windows下对应分区的格式,并记下其文件设备名称,如/dev/hda1等 命令:fdisk -l第31页/共48页第三十一页,共48页。5 使用mkdir命令在/

17、mnt新建子目录作为挂载点 命令:mkdir /mnt/windows6 挂载windows相应分区,若是vfat格式,则命令为:mount -t vfat /dev/had* /mnt/windows7 进入挂载目录下,查看是否挂载上 命令为:cd /mnt/windows; ls(如果用虚拟机共享则上面的步骤(bzhu)不需要)8 在/usr/local下建名为arm的目录 命令为:mkdir /usr/local/arm第32页/共48页第三十二页,共48页。10将当前目录转到/usr/local/arm下 命令为:cd /usr/local/arm12将此目录下的/bin目录添加到环境

18、变量中去 命令为:echo “”/.bashrc13使设置(shzh)立即生效 命令为source /.bashrc14查看该路径是否已添加到环境变量中 命令为:echo $PATH注:在vmware中可以通过vmware tools设置(shzh)windows和linux之间的文件共享第33页/共48页第三十三页,共48页。 。 。 。 。 。 。 。 。 。 。 。 。第34页/共48页第三十四页,共48页。开发环境(hunjng)_编译器配置用export的方法添加的环境变量在掉电后会丢失,可以使用如下方法设置:#vi /root/.bashrc 编辑(binj)/root/.bash

19、rc 文件,在最后一行立即起作用:source /root/.bashrc保存退出,输入arm-linux-gcc -v 检查交叉编译环境是否成功安装建立(jinl)新文件或增加文件内容 格式:ECHO 文件内容文件名ECHO 文件内容文件名第35页/共48页第三十五页,共48页。HelloWorld程序(chngx) 在Linux下用文本编辑器(vi、gedit等) hello.c的源代码如下(rxi): #include int main(void) printf (Hello world, Linux programming!n); return 0;第36页/共48页第三十六页,共48

20、页。编写(binxi)makefilehello:hello.carm-linux-gcc o hello hello.cclean:rm f hello第37页/共48页第三十七页,共48页。编译(biny)应用程序 在上面的步骤完成后,我们(w men)将hello.c和Makefile文件放在同一目录下,运行make来编译程序了。如程序进行了修改,重新编译则运行make clean,然后再make。 若不用Makefile,直接用gcc编译也行 arm-linux-gcc hello.c o hello 注意:编译、修改程序都是在宿主机(本地PC机)上进行,不能在MINICOM下进行。第

21、38页/共48页第三十八页,共48页。通过(tnggu)NFS调试程序 前面配置开发环境时已在宿主(szh)PC上启动了NFS服务,并设置好了共享目录,可以在终端中输入minicom,建立开发板与宿主(szh)PC机之间的通讯了。 注意:IP地址需要根据宿主(szh)PC的实际情况修改 成功挂接宿主(szh)PC的jx2410目录(假定编写了hello.c和Makefile都在此目录下)后,在开发板上进入/mnt目录便相应进入宿主(szh)PC的/jx2410目录。在/host目录下运行编译好的hello程序 #./hello 可以看到结果 Hello world, Linux program

22、ming! 注意:开发板挂接宿主(szh)机目录只需挂接一次,只要开发板没有重启,就能一直保持连接。这样可以反复 修改、编译、调试,不需要下载到开发板第39页/共48页第三十九页,共48页。mount参数(cnsh) -t 指定设备的文件系统类型。常用的选项说明有: minix Linux最早使用的文件系统。 ext2 Linux目前的常用文件系统。 msdos MS-DOS 的 FAT。 vfat Win85/98 的 VFAT。 nfs 网络文件系统。 iso9660 CD-ROM光盘的标准(biozhn)文件系统。 ntfs Windows NT的文件系统。 hpfs OS/2文件系统。Windows NT 3.51之前版本的文件系统。 auto 自动检测文件系统。 第40页/共48页第四十页,共48页。通过(tnggu)tftp下载 先连接网线,以及串口,并启动宿主机的Windows系统,且该宿主机的IP地址必须为。 然后使用tools目录下的tftpd32jtftpd32.exe程序启动tftp服务器。该软件启动后,在setting中进行设置,也可以在“Current Directory”编辑框中选择所要下载文件所在的目录。 启动串口超级终端,然后将系统通电(tng din)。 注:使用tftp下载需要预装系统中支

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论