嵌入式实训 Day2 u-boot的烧写及使用

实验环境:

1、 ubuntu 12.04发行版
2、 u-boot-2010.03
3、 FS4412平台

【1】Linux系统移植

引导启动界面 –> Linux镜像 –> 加载Linux文件系统

引导程序:bootloder
uboot Linux 3.14

【2】SD启动盘制作

  a) 将 sdfuse_q拷贝到Linux家目录下
  b) 将SD卡插入电脑并在ubuntu中识别
  c) 进入sdfuse_q目录并执行如下操作将SD卡制作成uboot 2010启动盘

1
$ sudo  ./mkuboot.sh  /dev/sdb

  d) 在SD卡中创建目录sdupdate并把学生资料中的实验代码/第一天/镜像中的u-boot-fs4412.bin(uboot 2013)拷贝到这个目录下

【3】u-boot的烧写

a) 使用串口线连接板子与电脑,运行串口通信程序putty(实验代码/第一天/工具)

选择右上角的”Serial”,然后点击左下角的”Serial”

按照自己的主机的情况(设备管理器中)选择COM口,其他信息必须一直,然后点击open打开串口

b) 关闭开发板电源,将拨码开关SW1调至(1000)(SD启动模式)
c) 将刚才做好的SD启动盘插入开发板SD卡插槽
d) 重新打开开发板电源能够看到如下界面

在倒计时时按任意键让uboot停留在交互模式
e) 烧写
在终端上执行

1
# sdfuse flashall

等待终端无输出是表示烧写结束
f) 关闭开发板电源,将拨码开关SW1调至0110(EMMC启动模式)后打开电源可以看到如下界面表示烧写成功

在倒计时时按任意键让uboot停留在交互模式

总结

  整个嵌入式开发大体分为三层,自上而下依次为应用层、驱动层和硬件层,而我们主要做的是应用层。Linux系统的启动需要引导程序的引导,所以在移植系统之前需要对开发板烧写uboot引导程序。对开发板烧写系统与安装Windows系统类似,首先需要制作SD启动盘,在制作好SD启动盘后,将uboot烧写到flash中。这样,开发板在每次上电以后就会自行将uboot从flash中复制到DRAM中,并通过一系列命令引导Linux镜像启动。接下来就是通过tftp传输内核镜像,nfs远程访问文件系统,此为后话。