当前位置: 首页 > >

linux嵌入式开发流程及所需工具

发布时间:

一、建立开发环境 建立开发环境 1、安装 Ubuntu Linux 2、安装 vim apt# sudo apt-get install vim 3、安装串口工具 kermit sudo apt-get install ckermit 配置文件 cd ~ 进入用户目录 vim .kermrc 添加如下内容: set line /dev/ttyS0 #如果使用的是 USB 串口这里是/dev/ttyUSB0 set speed 115200 set carrier-watch off set handshake none set flow-control none robust set file type bin set file name lit set rec pack 1000 set send pack 1000 set window 5 4、安装 NFS 服务器 #sudo apt-get install nfs-kernel-server 配置: # sudo mkdir -p /nfsroot/myfs # sudo chmod 777 /nfsroot # sudo vi /etc/exports 添加: /nfsroot/myfs *(rw,async,no_root_squash) # sudo /etc/init.d/nfs-kernel-server restart 5、安装 TFTP 服务器 #sudo apt-get install tftp-hpa tftpd-hpa xinetd 配置: # sudo mkdir -p /tftpboot # sudo chmod 777 /tftpboot # sudo vim /etc/xinetd.d/tftp 添加如下内容 service tftp { disable = no socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd

server_args = -s /tftpboot per_source = 11 cps = 100 2 flags = IPv4 } # sudo /etc/init.d/xinetd restart 6、安装编译内核需要的库 # sudo apt-get install libncurses5-dev sharutils 二、建立引导装载程序 BOOTLOADER 建立引导装载程序 BOOTLOADER(类似与 PC 机的 BIOS) BootLoader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序, 我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一 个合适的状态,以便为最终调用操作系统内核准备好正确的环境。 一般使用 UBOOT。 三、下载已经移植好的 Linux 操作系统 最好有专门针对所使用的 CPU 移植好的 Linux 操作系统, 下载到开发板并能成功运行后, 再添加特定硬件的驱动程序,然后进行调试修改。 四、建立根文件系统 可以从 http://www.busy.box.net 下载使用 BUSYBOX 软件进行功能裁减,产生一个最 基本的根文件系统, 再根据自己的应用需要添加其他的程序。 由于默认的启动脚本一般都不 会符合应用的需要,所以就要修改根文件系统中的启动脚本,它的存放位置位于/etc 目录 下,包括:/etc/init.d/rc.S、/etc/profile、/etc/.profile 等,自动挂装文件系统的配 置文件/etc/fstab, 具体情况会随系统不同而不同。 根文件系统在嵌入式系统中一般设为只 读,需要使用 mkcramfs genromfs 等工具产生烧写映像文件。 五、建立应用程序的 FLASH 磁盘分区 一般使用 JFFS2 或 YAFFS 文件系统, 这需要在内核中提供这些文件系统的驱动, 现在一 般的开发板使用一个较小的线性 FLASH(NOR 型, 一般为 2MB)和一个较大的非线性 FLASH(NAND 型,一般有 64MB 以上),需要根据应用规划 FLASH 的分区方案。 六、开发应用程序 应用程序开发过程中一般使用 NFS 文件系统,NFS 文件系统直接在 PC 机的硬盘里,调 试应用程序的时候不用下载到开发板上, 就可以直接调试程序, 这样可以大大的提高程序开 发的效率。等一切调试完毕的时候,才把应用程序可以放入根文件系统中,也可以放入 YAFFS、JFFS2 文件系统中。 七、烧写内核、根文件系统和应用程序,发布产品。 烧写内核、根文件系统和应用程序,发布产品。

连接主机和开发板:串口(用来控制板子)和以太口(用来下载程序)。把生成代码下载到目标 板执行调试。




友情链接: