开发板使用(二)
上一篇文章介绍了,怎么在调试开发板以及开发板上运行程序
本篇文章介绍,怎么更新开发板系统?
一、开发板开发流程介绍
开发板裸机开发流程
对于功能简单仅包括应用程序的嵌入式系统一般不使用操作系统,我们可使用类似单片机开发的步骤完成整个开发。
1.硬件开发(PCB、原理图 ——硬件工程师 2.启动代码(硬件初始化)——芯片厂商(汇编) 3.设备驱动(裸机下驱动——驱动工程师 4.应用程序(单任务)——应用工程师
开发板带操作系统开发流程
当设计较复杂的程序时,可能就需要一个操作系统(OS)来管理控制内存、多任务、周边资源等
1.硬件开发(PCB、原理图) 2.启动加载程(bootloader) 3.操作系统内核(kernel) 4.根文件系统 (root) 5.设备驱动 (driver) 6.应用程序 (进程、线程、GUI、网络、数据库等)
二、开发板系统组成(软件)
bootloader、kernel(driver)、rootfs、app层次
2.1 BootLoader
定义:
系统加电后,在操作系统内核或用户应用程序运行之前运行的一段或多段程序
作用:
将系统的软件硬件环境带到一个合适的状态,为调用操作系统内核准备好正确的环境,类似于pc上的BIOS.(PC在BIOS之后仍然会启动bootloader)
2.2 linux内核
是linux系统软件的核心,它的性能对整个系统的性能起决定作用 由linus领导的开源社区对其进行甄别和修改最终决定是否进入到linux主线内核源码中 http://www.kernel.org是内核源码的主要来源,所有来自全世界的对linux源码的修改最终都会汇总到这个网站 linux内核实现了操作系统的五大功能模块: 进程管理\内存管理\文件系统\设备控制\网络
2.3 linux驱动程序
驱动程序就是沟通用户与各式各样、千变万化硬件的桥梁 驱动程序也是一类程序,其作用是驱动硬件正常工作,没有他,嵌入式将寸步难行 例如:lcd、flash、ad、网络等正常工作都需要相应的驱动程序来支持
2.4根文件系统
存放linux系统所需:重要文件、命令、应用程序等都保存在根文件系统中,操作系统起来后可以直接使用 在启动内核后需要挂载根文件系统 1、包含linux内核启动必须的配置文件,如:开机密码、网络配置脚本、环境变量等 2、应用程序运行需要的库函数等 3、常用应用程序:ftp、vi、telnet、web服务器等
2.5 linux应用程序
嵌入式linux应用程序开发可以说是嵌入式系统中最重要的组成部分 我们做出来产品最终是什么,完全看应用程序怎么写 基于本地图形库:QT、miniGUI、MicroWindows 基于网络:CS结构、BS结构、路由转发、组网 基于数据存储与处理:sqllite等 基于设备控制:uart、can、iic、spi等
三、bootloader、内核、根文件系统烧写
bootloader是系统加电后运行的第一段程序,因此需要我们把bootloader烧入以下介质,完成启动。
USB更新系统步骤
step1:初始化USB,准备与上位机通信。 step2:在上位机(XP)上运行fastboot软件。 step3:修改开发板的环境变量。
step1:初始化USB,准备与上位机通信
让开发板停在bootloader命令行界面: 开发板的串口1和电脑的串口通过串口线连接后,打开开发板电源。当串口软件上出现"Hit any key to stop autoboot"时迅速按下电脑键盘上一任意按键。
开发板上的USB OTG口(如下图)通过USB线和电脑USB相连。
在bootloader命令行界面中敲入fastboot命令并回车的界面如下图所示:
输入fastboot命令后开发板会初始化USB OTG口,让其准备好和上位机通信。
第一次使用fastboot命令时,电脑出现硬件安装向导。此时应安装fastboot驱动。
安装成功,黄色感叹号消失。
step2:在XP上运行fastboot软件
双击fastboot目录下的sp_linux_image_down.bat则会运行fastboot.exe软件,往开发板上烧入Linux系统。
step3:结束
在命令行显示如下内容时表示烧写结束
注意:如果是安卓系统第一次烧写
step1:同上
step2:在XP上运行fastboot软件,脚本文件应修改为如下所示,先烧引导程序,后重启
step3:分区
分区命令1
mmc erase 0x400 0x40
分区命令2
fdisk 2 8 100000:4000000 4100000:2f200000 33300000:1ac00000 4e000000:800000 4e900000:160000050000000:0xc800000 0x5c900000:0x1f400000 0x7be00000:0x0
重启:
reset
step4:在XP上运行fastboot软件,脚本文件应修改为如下所示