版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 第四章第四章 构建嵌入式交叉开发环境构建嵌入式交叉开发环境4.1 交叉开发环境介绍交叉开发环境介绍 4.1.1 交叉开发概念模型交叉开发概念模型内核映像 根文件系统内核映像HOSTTARGET下载内核映像各种连接方式挂接NFS文件系统 TARGET就是目标板,就是目标板,HOST是开发主是开发主机。在开发主机上,可以安装开发工具,机。在开发主机上,可以安装开发工具,编辑、编译目标板的编辑、编译目标板的Linux引导程序、内核引导程序、内核和文件系统,然后在目标板上运行。通常和文件系统,然后在目标板上运行。通常这种在主机环境下开发,在目标板上运行这种在主机环境下开发,在目标板上运行的开发模式叫
2、作的开发模式叫作交叉开发交叉开发。4.1.2 目标板与主机之间的连接目标板与主机之间的连接 目标板和主机之间通常可以使用串口、目标板和主机之间通常可以使用串口、以太网接口、以太网接口、USB接口以及接口以及JTAG接口等连接口等连接方式。接方式。(1)串行通讯接口)串行通讯接口(2)以太网接口)以太网接口(3)USB接口接口(4)JTAG等接口等接口4.1.3 文件传输文件传输(1)串口传输方式)串口传输方式 主机端通过主机端通过kermit、minicom或者或者windows超级终端超级终端等工具都可以通过串口发送文件。等工具都可以通过串口发送文件。(2)网络传输方式)网络传输方式 网络传
3、输方式一般采用网络传输方式一般采用TFTP(Trivial File Transport Protocol)协议。)协议。(3)USB接口传输方式接口传输方式 通常分主从设备端,主机端为主设备端,目标板端通常分主从设备端,主机端为主设备端,目标板端为从设备端。为从设备端。(4)JTAG接口传输方式接口传输方式 JTAG仿真器跟主机之间的连接通常是串口、并口、仿真器跟主机之间的连接通常是串口、并口、以太网接口或者以太网接口或者USB接口。接口。(5)移动存储设备)移动存储设备 如果目标板上有软盘、如果目标板上有软盘、CDROM、USB盘等移动存储盘等移动存储介质,就可以制作启动盘或者复制到目标板
4、上,从而引导介质,就可以制作启动盘或者复制到目标板上,从而引导启动。启动。4.1.4 网络文件系统网络文件系统 NFS文件系统的优点如下文件系统的优点如下: (1)本地工作站使用更少的磁盘空间,因为通常)本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络的数据可以存放在一台机器上而且可以通过网络访问到。访问到。 (2)用户可以通过网络访问共享目录,而不必在)用户可以通过网络访问共享目录,而不必在计算机上为每个用户都创建工作目录。计算机上为每个用户都创建工作目录。(3)软驱、)软驱、CDROM等存储设备可以在网络上面共等存储设备可以在网络上面共享使用。这可以减少整个
5、网络上的移动介质设备享使用。这可以减少整个网络上的移动介质设备的数量。的数量。(4)NFS至少有一台服务器和一台(或者更多)至少有一台服务器和一台(或者更多)客户机两个主要部分。客户机远程访问存放在服客户机两个主要部分。客户机远程访问存放在服务器上的数据。务器上的数据。需要配置启动需要配置启动NFS等相关服务。等相关服务。4.2 安装交叉编译工具安装交叉编译工具 基于上述硬件环境配置的需求,接下来一步基于上述硬件环境配置的需求,接下来一步步构建这个交叉开发环境。首先要安装交叉编译步构建这个交叉开发环境。首先要安装交叉编译工具链。工具链。4.2.1 获取交叉开发工具链获取交叉开发工具链几个几个A
6、RM Linux的免费站点:的免费站点: (1).uk (2) (3)http:/ (4)http:/4.2.2 主机安装工具链主机安装工具链 对于对于RPM格式的工具链,可以通过格式的工具链,可以通过rpm命令把软件包命令把软件包安装到主机上。安装到主机上。 对于对于tar包,可以使用包,可以使用tar命令解压。命令解压。 以以ARM Linux站点提供的站点提供的cross-3.3.2.tar.bz2包为例包为例说明。解压后,查看说明。解压后,查看GCC版本号,可以得到一些信息,版本号,可以得到一些信息,如
7、:如:$ tar jxvf cross-3.3.2.tar.bz2$ ./3.3.2/bin/arm-linux-gcc v 出现如下信息:出现如下信息:. prefix=/usr/local/arm/3.3.2 i686-pc-linux-gnu. 表明表明GCC的安装路径,是在的安装路径,是在GCC编译前通过编译前通过prefix选选项配置的。因此该工具链的安装路径为:项配置的。因此该工具链的安装路径为: /usr/local/arm/3.3.2 4.3 主机开发环境配置主机开发环境配置 4.3.1 主机环境配置主机环境配置 主机端安装主机端安装Linux操作系统(只要磁盘有足够空间,最好
8、操作系统(只要磁盘有足够空间,最好是完全安装)。是完全安装)。 接下来就是主机接下来就是主机Linux环境配置。环境配置。 然后把然后把交叉开发工具链的路径添加到环境变量交叉开发工具链的路径添加到环境变量PATH中中,这样可以方便地在这样可以方便地在Bash或者或者Makefile中使用这些工具。通常中使用这些工具。通常可以在环境变量的配置文件有可以在环境变量的配置文件有3个:个: /etc/profile是系统启动过程执行的一个脚本,对所有用是系统启动过程执行的一个脚本,对所有用户都生效。户都生效。 /.bash_profile是用户的脚本,在用户登录时生效。是用户的脚本,在用户登录时生效。
9、 /.bashrc也是用户的脚本,在也是用户的脚本,在/.bash_profile中调用中调用生效。生效。 把环境变量配置的命令添加到其中一个文件中即可。把环境变量配置的命令添加到其中一个文件中即可。4.3.2 串口控制台工具串口控制台工具 串行通讯接口很适合作为控制台,在各种操串行通讯接口很适合作为控制台,在各种操作系统上一般都有现成的控制台程序可以使用。作系统上一般都有现成的控制台程序可以使用。 Windows操作系统有超级终端操作系统有超级终端(Hyperterminal)串口通讯工具;)串口通讯工具;Linux/UNIX操作系统有操作系统有minicom等串口通讯工具。等串口通讯工具。
10、 minicom的配置界面是菜单方式。在的配置界面是菜单方式。在Shell下下执行执行“minicom s”命令,出现配置菜单。命令,出现配置菜单。 图形见图形见P774.3.3 DHCP服务服务 目标板的目标板的Bootloader或者内核都需要分配或者内核都需要分配IP地址。这可以通过动态主机配置协议(地址。这可以通过动态主机配置协议(DHCP Dynamic Host Configuration Protocol)或者)或者BOOTP协议实现。协议实现。 BOOTP协议可以给计算机分配协议可以给计算机分配IP地址并且地址并且通过网络获取映像文件的路径;通过网络获取映像文件的路径;DHCP
11、则是向后则是向后兼容兼容BOOTP的协议拓展。的协议拓展。 Linux操作系统的主机一般包含操作系统的主机一般包含dhcpd的软的软件包,可以配置件包,可以配置DHCP服务。配置服务的操作需服务。配置服务的操作需要要root用户的权限。配置文件为用户的权限。配置文件为/etc/dhcpd.conf4.3.4 TFTP服务服务 TFTP协议是简单的文件传输协议,所以实现简单,使用协议是简单的文件传输协议,所以实现简单,使用方便,正好适合目标板方便,正好适合目标板Bootloader使用。但是文件传输是基于使用。但是文件传输是基于UDP的,文件传输(特别是大文件)是不可靠的。的,文件传输(特别是大
12、文件)是不可靠的。 TFTP服务在服务在Linux系统上有客户端和服务器系统上有客户端和服务器2个软件包。个软件包。配置配置TFTP服务,必须先安装好。服务,必须先安装好。 TFTP服务也可以通过图形化的配置窗口来启动。操作过程服务也可以通过图形化的配置窗口来启动。操作过程需要需要root权限。缺省的情况下,把权限。缺省的情况下,把/tftpboot目录作为输出文件目录作为输出文件的根目录。的根目录。 还可以手工修改还可以手工修改TFTP配置文件,定制配置文件,定制TFTP服务。配置文服务。配置文件为件为/etc/xintd.d/tftp,修改好后需要执行:修改好后需要执行: $ /etc/i
13、nit.d/xinetd restart 使使xinetd重新启动重新启动TFTP服务。服务。4.3.5 NFS服务服务 NFS服务的主要任务是把本地的一个目录通过网络输服务的主要任务是把本地的一个目录通过网络输出,其他计算机可以远程地挂接这个目录并且访问文件。出,其他计算机可以远程地挂接这个目录并且访问文件。 NFS服务有自己的协议和端口号,但是在文件传输服务有自己的协议和端口号,但是在文件传输或者其他相关信息传递的时候,或者其他相关信息传递的时候,NFS则使用远程过程调用则使用远程过程调用(RPC,Remote Procedure Call)协议。)协议。 NFS服务通过一系列的工具来配置
14、文件输出,配置文服务通过一系列的工具来配置文件输出,配置文件为:件为:/etc/exports 修改好后需要执行:修改好后需要执行: $ /etc/rc.d/init.d/portmap start $ /etc/rc.d/init.d/nfs start 来启动服务。来启动服务。 如果希望每次系统引导时都启动如果希望每次系统引导时都启动NFS服务,可以用以服务,可以用以下命令:下命令: $ /sbin/chkconfig nfs on4.4 启动目标板启动目标板 4.4.1 系统引导过程系统引导过程 第一阶段是目标板硬件初始化,解压内核映像,第一阶段是目标板硬件初始化,解压内核映像,再跳转到
15、内核映像入口。再跳转到内核映像入口。 第二阶段是内核的初始化,初始化设备驱动,挂第二阶段是内核的初始化,初始化设备驱动,挂接根文件系统。接根文件系统。 第三阶段是执行用户空间的第三阶段是执行用户空间的init程序,完成系统程序,完成系统初始化、启动相关服务和管理用户登录等工作。初始化、启动相关服务和管理用户登录等工作。4.4.2 内核解压启动内核解压启动 目标板处理器上电或者复位后,首先执行引目标板处理器上电或者复位后,首先执行引导程序(导程序(Bootloader),初始化内存等硬件,然),初始化内存等硬件,然后把压缩的内核映像加载到内存中,最后跳转到后把压缩的内核映像加载到内存中,最后跳转
16、到内核映像入口执行。这样就把控制权完全交给内内核映像入口执行。这样就把控制权完全交给内核映像了。核映像了。 接下来内核映像继续执行,完成自解压或者接下来内核映像继续执行,完成自解压或者重定位,然后跳转到解压后的内核代码入口。这重定位,然后跳转到解压后的内核代码入口。这部分主要是部分主要是Linux内核的自引导程序,又叫作内核的自引导程序,又叫作Linux bootloader,包含在内核源代码中。这部,包含在内核源代码中。这部分引导代码相对简单,不可能替代目标板上的分引导代码相对简单,不可能替代目标板上的Bootloader。4.4.3 挂接根文件系统挂接根文件系统 Linux内核要挂接内核要
17、挂接NFS根文件系统,需要以根文件系统,需要以下两个工作:下两个工作:(1)在主机端配置相应的网络服务;)在主机端配置相应的网络服务;(2)配置目标板的内核选项,支持)配置目标板的内核选项,支持nfs服务。服务。 另外还必须具备以下条件另外还必须具备以下条件: (1)以太网接口驱动正常)以太网接口驱动正常 (2)配置内核启动命令行参数)配置内核启动命令行参数 (3)配置内核挂接)配置内核挂接NFS根文件系统根文件系统4.5 应用程序的远程交叉调试应用程序的远程交叉调试 4.5.1 交叉调试的模型交叉调试的模型HOSTTARGET以太网连接NFSgdbgdbserver应用程序和源码应用程序4.
18、5.2 交叉调试程序实例交叉调试程序实例 1 1交叉编译交叉编译(1 1)在主机上编辑)在主机上编辑hello.chello.c程序程序(2 2)交叉编译)交叉编译(3 3)把可执行程序复制到)把可执行程序复制到NFSNFS输出的目录下面输出的目录下面(4 4)这时在目标板端也可以访问到同样的程序,执行程序)这时在目标板端也可以访问到同样的程序,执行程序 2 2交叉调试交叉调试(1 1)编译程序的时候,需要添加)编译程序的时候,需要添加-g-g编译选项编译选项(2 2)在目标板上,启动)在目标板上,启动gdbservergdbserver,控制程序执行,控制程序执行(3 3)在主机端,启动)在
19、主机端,启动DDDDDD和和gdbgdb调试程序调试程序(4 4)在)在DDDDDD下窗口的下窗口的GDBGDB控制台下,建立连接控制台下,建立连接(5 5)设置断点,执行到断点)设置断点,执行到断点 1、UP-NETARM2410-S嵌入式嵌入式Linux 开发平台简介开发平台简介 :(1) 硬件配置硬件配置 4.6 ARM9系统配置说明系统配置说明 (2 )S3C2410 芯片介绍芯片介绍 S3C2410X 芯片集成了大量的功能单元,包括:芯片集成了大量的功能单元,包括: 1、 内部内部1.8V,存储器存储器3.3V,外部外部IO3.3V,16KB 数数据据CACHE,16KB 指令指令C
20、ACHE,MMU。 2、内置外部存储器控制器(内置外部存储器控制器(SDRAM 控制和芯片选控制和芯片选择逻辑)。择逻辑)。 3、LCD 控制器(最高控制器(最高4K 色色 STN 和和256K 彩色彩色TFT),一个一个LCD 专用专用DMA。 4、4 个带外部请求线的个带外部请求线的DMA。 5、三个通用异步串行端口(三个通用异步串行端口(IrDA1.0, 16-Byte Tx FIFO, and 16-Byte Rx FIFO),2通道通道SPI。 6、一个多主、一个多主IIC 总线,一个总线,一个IIS 总线控制器。总线控制器。 7、SD 主接口版本主接口版本1.0 和多媒体卡协议版本
21、和多媒体卡协议版本2.11 兼容。兼容。 8、2 个个USB HOST ,一个一个USB DEVICE( VER1.1)。)。 9、4 个个PWM 定时器和一个内部定时器。定时器和一个内部定时器。 10、 看门狗定时器。看门狗定时器。 11、117 个通用个通用IO。 12、24 个外部中断。个外部中断。 13、电源控制模式:标准、慢速、休眠、掉电。、电源控制模式:标准、慢速、休眠、掉电。 14、 8 通道通道10 位位ADC 和触摸屏接口。和触摸屏接口。 15、 带日历功能的实时时钟。带日历功能的实时时钟。 16、芯片内置、芯片内置PLL。 17、设计用于手持设备和通用嵌入式系统。设计用于手
22、持设备和通用嵌入式系统。 18、1632 位位RISC 体系结构,使用体系结构,使用ARM920T CPU 核的强大指令集。核的强大指令集。 19、 ARM 带带MMU 的先进的体系结构支持的先进的体系结构支持WINCE、EPOC32、LINUX。 20、指令缓存(指令缓存(cache)、)、数据缓存、写缓冲和物理地数据缓存、写缓冲和物理地址址TAG RAM,减小了对主存储器带宽和性能的影响。减小了对主存储器带宽和性能的影响。 21、 ARM920T CPU 核支持核支持 ARM 调试的体系结构。调试的体系结构。 22、内部先进的位控制器总线(、内部先进的位控制器总线(AMBA)(AMBA2.
23、0, AHB/APB)。 (1) 嵌入式嵌入式LINUX 开发环境方案:开发环境方案:、 基于基于PC 机机WINDOWS 操作系统下的操作系统下的 Cygwin;、 在在WINDOWS 下安装虚拟机下安装虚拟机Vmware workstation后,再在后,再在WINDOWS中安装中安装LINXUX 操作系统,指定链操作系统,指定链接即可。接即可。、 直接安装直接安装LINUX 操作系统。操作系统。2、建立嵌入式建立嵌入式Linux 开发环境开发环境 由于由于Redhat9.0 安装后占用空间约为安装后占用空间约为2.4G5G 之间之间,还要安装,还要安装ARMLINUX 开发软件(大约开发
24、软件(大约800M左右),左右),因此对开发计算机的硬盘空间要求较大。因此对开发计算机的硬盘空间要求较大。 硬件要求:硬件要求: CPU:高于奔腾高于奔腾500M,推荐高于推荐高于1.7G。 内存:大于内存:大于128M,推荐推荐256M以上。以上。 硬盘:大于硬盘:大于10G,推荐高于推荐高于40G。(2)对开发)对开发PC 机的性能要求机的性能要求 (1)配置网络,包括配置)配置网络,包括配置IP 地址、地址、NFS 服务、防服务、防火墙。火墙。 网络配置主要是要安装好以太网卡,对于一般常见网络配置主要是要安装好以太网卡,对于一般常见的的RTL8139 网卡,网卡,REDHAT9.0 可以
25、自动识别并自动安装可以自动识别并自动安装好,完全不要用户参与,因此建议使用该网卡。好,完全不要用户参与,因此建议使用该网卡。然后配置然后配置宿主机宿主机IP 为为192.168.0.*。如果是在有多台计算机使用的局如果是在有多台计算机使用的局域网环境使用此开发设备,域网环境使用此开发设备,IP 地址可以根据具体情况设地址可以根据具体情况设置。如图所示:置。如图所示: 3、配置嵌入式、配置嵌入式Linux 开发环境开发环境 对于对于REDHAT9.0,它默认的是打开了防火墙,它默认的是打开了防火墙,因此对于外来的因此对于外来的IP 访问它全部拒绝,这样其它网络设访问它全部拒绝,这样其它网络设备根
26、本无法访问它,即无法用备根本无法访问它,即无法用NFS mount 它,许多网它,许多网络功能都将无法使用。因此网络安装完毕后,应立即关络功能都将无法使用。因此网络安装完毕后,应立即关闭防火墙。闭防火墙。 操作如下:操作如下: 点击红帽子开始菜单,选择安全级别设置,选中无点击红帽子开始菜单,选择安全级别设置,选中无防火墙。如图所示:防火墙。如图所示: 在在“系统设置系统设置”菜单中选择服务器设置菜单,再选中菜单中选择服务器设置菜单,再选中服务菜单,将服务菜单,将iptables 服务的勾去掉服务的勾去掉,并确保并确保nfs 选项选中。选项选中。 配置配置NFS: 点击主菜单运行系统设置点击主菜
27、单运行系统设置-服务器设置服务器设置-NFS 服务器服务器(英文为(英文为SETUP-SYSTEM SERVICE-NFS),),点击点击“增加增加”出现如下界面,在目录出现如下界面,在目录(Drictory)中填入需要共中填入需要共享的路径,在主机享的路径,在主机(Hosts)中填入允许进行连接的主机中填入允许进行连接的主机IP 地址。并选择允许客户对共享目录的操作为只读(地址。并选择允许客户对共享目录的操作为只读(Readonly)或读写或读写(Read/write)。如图所示:如图所示: 下图是一些常规选项设置,可以保留默认值。下图是一些常规选项设置,可以保留默认值。 下图是对客户端存取
28、服务器的一些其他设置,一般不下图是对客户端存取服务器的一些其他设置,一般不需要设置,取默认值:需要设置,取默认值: 当将远程根用户当作本地根用户时当将远程根用户当作本地根用户时, 对于操作比较方便对于操作比较方便,但是安全性较差。最但是安全性较差。最后退出时则完成后退出时则完成NFS 配置。配置好后,配置。配置好后,界面应显示如下图所示:界面应显示如下图所示: 配置完成后,可用如下办法简单测试一下配置完成后,可用如下办法简单测试一下NFS 是否配置好了:在宿主机上自己是否配置好了:在宿主机上自己mount 自己,看自己,看是否成功就可以判断是否成功就可以判断NFS 是否配好了。是否配好了。例如
29、在宿主机例如在宿主机/目录下执行:目录下执行:mount 0:/arm2410 /mnt 其中其中0 为主机的为主机的IP 地址。地址。 然后到然后到/mnt/目录下看是否可以列出目录下看是否可以列出/ arm2410 目录下的所有文件和目录,可以则说明目录下的所有文件和目录,可以则说明mount 成成功,功,NFS 配置成功。配置成功。 (2)配置串口控制台配置串口控制台MINICOM:MINICOM: 1 、在在linux 操作系统操作系统Xwindow 界面下建立终端界面下建立终端(在桌面上点击右键(在桌面上点击右键新建终端)新建终端),在终端
30、的命令行提在终端的命令行提示符后输入示符后输入minicom,回车,就会看到回车,就会看到minicom 的启动画的启动画面(见图)。面(见图)。 若没有启动若没有启动Xwindow ,则在命令行提示符则在命令行提示符# #后直接输后直接输入入minicom 即可。即可。 2 、minicom 启动后,先按启动后,先按CtrlA 键,再按键,再按Z 键键(注意(注意Ctrl+A 松开后再按松开后再按Z),),进入主配置界面(见图)进入主配置界面(见图) 按按“O”进入配置界面,如图配置界面进入配置界面,如图配置界面 按上下键选择按上下键选择Serial port setup,进入端口设置界面,
31、进入端口设置界面,这里有几个重要选项改为如下值(见图):这里有几个重要选项改为如下值(见图): (在(在Change which setting 后按哪个字母就进入哪项的后按哪个字母就进入哪项的配置,如按配置,如按A 进行端口号配置。)进行端口号配置。)ASerial Device :/dev/ttyS0 (端口号使用串口端口号使用串口1)EBPS/par/bits :/115200 8N1 (波特率)波特率) F,E 硬件流,软件流都改为硬件流,软件流都改为NO, 若要使用若要使用PC 机的串口机的串口2 来接板子的串口来接板子的串口1 做监控,做监控,改为改为/dev/ttyS1 即可。即
32、可。 3、选好后按选好后按ESC 键退出到下图所示画面,选择键退出到下图所示画面,选择Save setup as df1 保存退出,以后只要启动保存退出,以后只要启动minicom 就是该配就是该配置,无需再做改动。置,无需再做改动。 4、配置完成后,用串口线连接好配置完成后,用串口线连接好pc 机和机和2410S,启启动动2410S,即可在即可在minicom 上看到启动信息,并可以执上看到启动信息,并可以执行操作控制。行操作控制。 (3) 、开发工具软件的安装、开发工具软件的安装 将开发工具光盘插入将开发工具光盘插入CDROM,然后执行以下命令然后执行以下命令 root localhost
33、 root# mount /dev/cdrom /mnt 若系统不识别若系统不识别/dev/cdrom 的话,可以用如下命令,的话,可以用如下命令,假设假设CDROM 为从盘,即为为从盘,即为/dev/hdb,则:则:root localhost root# mount t iso9660 /dev/hdb /mntroot localhost root# cd /mnt 如果如果CDROM 已经在安装已经在安装RedHat 的时候已经默认安的时候已经默认安装,以上命令请不要执行,请直接进入装,以上命令请不要执行,请直接进入CDROM 所在目所在目录(一般为录(一般为/mnt/cdrom):
34、# cd /mnt/cdrom # ./install.sh (运行安装脚本运行安装脚本) 安装脚本程序将自动建立安装脚本程序将自动建立 / arm2410 目录,并将所有目录,并将所有开发软件包安装到开发软件包安装到 / arm2410 目录下,同时自动配置编译目录下,同时自动配置编译环境,建立合适的符号连接。环境,建立合适的符号连接。 安装完成后看一下主编译器Armv4l-unknown-linux-gcc 是否在/opt/host/armv4l/bin/,如果不是这个路径,使用vi 修改/root/.bash_profile 文件中PATH 变量为 PATH=$PATH:$HOME/bi
35、n:/opt/host/armv4l/bin/ 存盘后执行:source /root/.bash_profile 以后armv4l-unknown-linux-gcc 会自动搜索到,可以在终端上输入armv,然后按tab 键,会自动显示armv4l-unknown-linux- (4)、)、Linux 开发软件的安装目录结构开发软件的安装目录结构 下面表格均以下面表格均以/arm2410目录为起点:目录为起点: 编译器安装路径说明如表所示:编译器安装路径说明如表所示: 上述诸多程序的源代码都在光盘中提供。上述诸多程序的源代码都在光盘中提供。 在安装完成在安装完成LINUX 后,就是对后,就是对
36、LINUX 的网络环境配的网络环境配置,最主要是配置置,最主要是配置NFS 服务器。服务器。 4、linux 系统及应用程序的烧写系统及应用程序的烧写 根据烧写方式不同,分为使用根据烧写方式不同,分为使用JTAG 烧写和使用串口烧写和使用串口下载。下载。 JTAG烧写,适用于烧写,适用于flash 空白或者空白或者vivi 损坏无法引导损坏无法引导的情况下,通过并口线和的情况下,通过并口线和JTAG 简易仿真器,用简易仿真器,用sjf2410-s.exe 将将vivi 烧录到烧录到flash 中作为引导启动程序。中作为引导启动程序。 串口下载,这也是最常用的烧写方式,即在核心模块串口下载,这也
37、是最常用的烧写方式,即在核心模块上已烧录有上已烧录有vivi 的前提下,进入的前提下,进入vivi,通过在通过在SDRAM 里里运行的运行的vivi 格式化格式化flash,烧写烧写vivi、内核和根文件系统,内核和根文件系统, 最后还需要把应用程序压缩文件最后还需要把应用程序压缩文件yaffs.tar.bz2 解压缩解压缩到实验平台的到实验平台的/mnt/yaffs 下。下。 在下文中简称在下文中简称UP-NETARM2410-S 为为2410-S。 所需镜像文件等均在光盘所需镜像文件等均在光盘img 目录中提供,目录中提供, vivi-操作系统启动的操作系统启动的bootloader; z
38、Image-Linux 操作系统内核;操作系统内核; root.cramfs-根文件系统;根文件系统; yaffs.tar.bz2-应用程序压缩包。应用程序压缩包。 (1 1)、超级终端设置)、超级终端设置 、运行、运行Windows 系统下开始系统下开始所有程序所有程序附件附件通通讯讯超级终(超级终(HyperTerminal),),新建一个通信终端。如新建一个通信终端。如果要求输入区号、电话号码等信息请随意输入,出现如图果要求输入区号、电话号码等信息请随意输入,出现如图所示对话框时,为所建超级终端取名为所示对话框时,为所建超级终端取名为arm,可以为其选可以为其选一个图标。单击一个图标。单
39、击“确定确定”按钮。按钮。 、在接下来的对话框中选择、在接下来的对话框中选择ARM 开发平台实际连开发平台实际连接的接的PC 机串口(如机串口(如COM1),),按确定后出现如图所示的按确定后出现如图所示的属性对话框,设置通信的格式和协议。这里波特率为属性对话框,设置通信的格式和协议。这里波特率为115200,数据位,数据位8,无奇偶校验,停止位,无奇偶校验,停止位1,无数据流控制。,无数据流控制。按按“确定确定”完成设置。完成设置。 、完成新建超级终端的设置以后,可以选择超级终、完成新建超级终端的设置以后,可以选择超级终端文件菜单中的端文件菜单中的“另存为另存为”,把设置好的超级终端保存在,
40、把设置好的超级终端保存在桌面上,以备后用。用串口线将桌面上,以备后用。用串口线将PC 机串口和平台机串口和平台UART0 正确连接后,就可以在超级终端上看到程序输出的信息了。正确连接后,就可以在超级终端上看到程序输出的信息了。 (2) 、串口下载烧写、串口下载烧写 在在Windows xp 平台下通过超级终端烧平台下通过超级终端烧vivi(bootloader)、内核(内核(Kernel)、)、根文件系统(根文件系统(root)的步骤如下:的步骤如下: 1复位复位2410- -S 开发板,按住开发板,按住pc 机键盘的机键盘的“Back Space”键,进入键,进入vivi命令模式,格式化命令
41、模式,格式化flash 并重新分区;并重新分区; 2运行运行load flash vivi|kernel|root x,此命令用于使此命令用于使用用xmodem 协议通过串口下载文件到开发板中,其中参数协议通过串口下载文件到开发板中,其中参数为为vivi|kernel|root 之一;之一; 3启用启用FTP 服务,上传应用程序压缩包并解压缩;服务,上传应用程序压缩包并解压缩; 4重新启动验证烧录是否成功。重新启动验证烧录是否成功。 1、格式化、格式化flash 打开超级终端,先按住打开超级终端,先按住PC 机键盘的机键盘的Back Space 键,键,然后启动然后启动2410-S,进入进入v
42、ivi,按按照以下命令格式化照以下命令格式化flashflash,重新分区,如图。重新分区,如图。 2 2、烧写、烧写vivivivi 这时已格式化这时已格式化flash,运行的是运行的是SDRAM 中的中的vivi。(注注意如果这时重启或断电会丢失所有数据,否则必须用意如果这时重启或断电会丢失所有数据,否则必须用Jtag 重新烧写重新烧写vivi)。viviload flash vivi x 回车回车此时终端提示:此时终端提示:Ready for downloading using xmodem.Waiting. 点击超级终端任务栏上点击超级终端任务栏上“传送传送”下拉菜单中的下拉菜单中的“
43、发送文件发送文件”,选择协议为,选择协议为Xmodem,选择镜像文件选择镜像文件vivi,点击点击“发送发送”,如图,如图,10 秒左右秒左右vivi 就烧写到就烧写到flash 里了里了。 这时要复位这时要复位2410- -S,重新进入重新进入vivi来烧写来烧写kernel、root。 3 3、烧写内核映象、烧写内核映象zImagezImageviviload flash kernel x 回车回车出现提示:出现提示:Ready for downloading using xmodem.Waiting. 点击超级终端任务栏上点击超级终端任务栏上“传送传送”下拉菜单中的下拉菜单中的“发送文件
44、发送文件”,选择镜像文件,选择镜像文件zImage,协议为协议为Xmodem,点点击击“发送发送”,如图,如图,4 分钟左右分钟左右zImage 传输完毕,传输完毕,zImage 先传输到先传输到SDRAM中,再把数据中,再把数据从从SDRAM 复制到复制到flash 里,请等待这一过程结束到里,请等待这一过程结束到出现出现vivi 再烧写再烧写root,否则会导致烧写否则会导致烧写kernel 失败。失败。 点击超级终端任务栏上点击超级终端任务栏上“传送传送”下拉菜单中的下拉菜单中的“发送发送文件文件”,选择镜像文件,选择镜像文件root.cramfs,协议为协议为Xmodem,点击点击“发
45、送发送”,如图,如图,8 分钟左右分钟左右root.cramfs 烧写完毕;烧写完毕; 5、烧写应用程序、烧写应用程序 用用2410-S 实验箱配套网线连接好实验箱配套网线连接好2410-S 的的NIC-1 网网口和口和PC 机的网口机的网口,重启重启2410-S 进入进入linux 操作系统的操作系统的/mnt/yaffs下,注意配置下,注意配置IP 在同一网段,执行以下指令:在同一网段,执行以下指令:/mnt/yaffsifconfig 查看查看IP/mnt/yaffsifconfig eth0 11 配置配置eth0 IP/mnt/yaffsinetd 启动启动ft
46、p 打开打开ftp (File Transfer ProtocolFile Transfer Protocol)软件软件FlashFXP(在光盘中在光盘中/img/flashvivi 目录中提供),点击界面中上部目录中提供),点击界面中上部黄色闪电符号,建立快速连接,黄色闪电符号,建立快速连接, 输入输入: :地址地址11,用户名:,用户名:root,密码:无。密码:无。 连接进入连接进入ftp服务服务, ,上传上传“yaffs.tar.bz2”到到2410-S 的的/var 文件夹下文件夹下,3 分钟左右上传完毕。分钟左右上传完毕。这时不能重启这时不能重启2410-S,否则上传过程无效。否则上传过程无效。 接下来在超级终端中输入:接下来在超级终端中输入:/mnt/yaffscd . 转换到转换到/mnt 下下/mntrm -rf /yaffs/* 删除删除/yaffs 下文件下文件/mntcd /var 转到转到var 目录下目录下/vartar xjvf yaffs.tar.bz2 C /mnt/yaffs 解压解压yaffs.tar.bz2 到到mnt/yaffs 目录下目录下如图所示,如图所示,注意大小写(注意大小写(C 为大写),为大写),需需5 分
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 尾矿处理工岗前技术操作考核试卷含答案
- 钢丝制品精整工发展趋势评优考核试卷含答案
- 样板钳工发展趋势竞赛考核试卷含答案
- 药膳制作师安全行为强化考核试卷含答案
- 黄磷生产工岗前标准化考核试卷含答案
- 商务沟通与协调规范制度
- 养老院安全管理规定制度
- 2025自然语言处理工程师校招面试题及答案
- 2025年抗菌药物培训相关考试题及答案
- 成医大外科手术基本操作教学大纲(供五年制医学影像专业使用)
- 股东代为出资协议书
- 财务部门的年度目标与计划
- 消防管道拆除合同协议
- 四川省森林资源规划设计调查技术细则
- 银行外包服务管理应急预案
- DB13T 5885-2024地表基质调查规范(1∶50 000)
- 2025年度演出合同知识产权保护范本
- 青少年交通安全法规
- 区块链智能合约开发实战教程
- 2025年校长考试题库及答案
- 口腔进修申请书
评论
0/150
提交评论