说明:本来打算第二份笔记作开发环境搭建的,但是整个开发环境的搭建比较复杂,所以学到后面的时候再回过来系统的讲述一下如何搭建开发环境,这一节内容就讲如何烧录制作好的镜像到开发板中。
一、Android4.0.3的烧写(OTG烧写)
1.准备工作
(1)硬件准备:
iTOP-4412开发板、电源、串口线、OTG线
(2)软件及驱动准备:
ADB驱动、串口驱动、超级终端
(3)安装镜像(压缩包):
u-boot-iTOP-4412.bin(uboot,通用引导程序)
zImage(kernel,内核)
ramdisk-uboot.img和system.img(rootfs,根文件系统)
2.烧写过程
(1)连接电源、串口线和OTG线
(2)打开超级终端,连接开发板
(3)打开开发板电源,超级终端下立刻按下回车,进入uboot引导程序
(4)分区和格式化操作:
(5)第四步:格式化eMMC并创建分区,
注:此步骤可以跳过!不必每次都格式化分区;2、格式化命令不会删除uboot文件和Linux内核文件
fdisk -c 0
按照默认方式给EMMC分区
Linux内核镜像文件为5M
Android镜像文件为300M
Data和Cache文件为1G
临时文件为300M
剩下的为用户区,例如使用手机的时候下载的电影小说都是放在这个区域。如果想更改Linux内核镜像文件区域的大小,只能更改u-boot文件
a)fatformat mmc 0:1
格式化Fat文件系统,也就是默认最大的用户存储空间
b)ext3format mmc 0:2
格式化Android镜像文件
c)ext3format mmc 0:3
格式化Data和Cache分区
d)ext3format mmc 0:4
格式化临时文件保存区
(5)输入fastboot 连接主机,这时候超级终端应该不能动了,切到cmd
注:如果正常连接的话,输入fastboot应该会有音效,设备管理器也可以看到相应的驱动。不正常的话,重新安装一下驱动。网盘的驱动不是适合每台电脑的,我就出现了在Android下驱动正常,fastboot连接主机时出现“未知设备Android1.0”。后来听群里的朋友建议,用来手机助手比如豌豆荚后才安装正常。
(5)如何你设置了环境变量的话,adb和fastboot命令应该是可以直接调用的,没有的话到platform-tools目录下打开cmd.exe
(6)烧写uboot ,输入命令:
fastboot.exe(这里用fastboot也可以) flash bootloader u-boot-iTOP-4412.bin
注:最后一个是文件名,是在当前目录下,如果不在的话应该输入文件的全路径。
另外一般不用烧写uboot。这里很有意思,使用OTG烧写本身我们就需要通过uboot来进行引导,没有uboot是根本无法进行烧写的。所以一般使用OTG烧写的情况下只烧写内核和文件系统。只有在uboot损坏的情况下,我们会首先进行uboot烧写,就是我们所说的出厂第一次烧写。
(7)烧写kernel,输入命令:
fastboot flash kernel zImage
(8)烧写rootfs ,输入命令:
fastboot flash ramdisk ramdisk-uboot.img
fastboot flash system system.img
(9)输入擦除命令:fastboot -w
(10)输入重启命令:fastboot reboot
重启成功就可以使用全新的安卓系统了。
二、QT系统的烧写(TF卡烧写)
QT系统其实也可以使用OTG时烧写,但烧写方法与Android系统相同,所以这里使用TF卡烧写方式烧写QT系统
1.准备工作
(1)硬件准备:
开发板、电源、串口线、TF卡
(2)软件及驱动准备:
ADB驱动、串口驱动、超级终端
(3)安装镜像(压缩包):
u-boot-iTOP-4412.bin(uboot,通用引导程序)
zImage(kernel,内核)
ramdisk-uboot.img和system.img(rootfs,根文件系统)
(4)源码
iTop4412_uboot_20151119.tar.gz
注:上述的文件可能文件名不同,使用时请注意
2.烧写过程
(1)连接电源、串口线、插入TF卡
(2)打开超级终端,连接开发板
(3)打开开发板电源,超级终端下立刻按下回车,进入uboot引导程序
(4)分区和格式化操作(完成后可暂时关机,拔出TF卡):
注:上面的分区命令的是参数“1”,代表的是 tf 卡,如果是“0”则代表是 eMMC。
如果是 2G 的 TF 卡,请将命令“fdisk -c 1”改为“fdisk -c 1 300 300 300”。
a) fdisk -c 1
b) fatformat mmc 1:1
c) ext3format mmc 1:2
d) ext3format mmc 1:3
e) ext3format mmc 1:4
(5)制作TF卡
a) 拷贝iTop4412_uboot_20151119.tar.gz到ubuntu,目录自定
注:拷贝方式很多:ssh、共享文件夹等,但是装了VMWare-Tools的话,实际上是可以直接拷贝的,从windows下拉过来就好了,很方便。
b) 解压缩到当前目录 tar -vxf iTop4412_uboot_20151119.tar.gz,得到 iTop4412_uboot
注:文件名长可以使用TAB键补全,这个很有用
c) 拷贝u-boot-iTOP-4412.bin到 iTop4412_uboot下。
d) 使用读卡器连接TF卡到Ubuntu系统,查看磁盘命令
进入U-boot所在目录iTOP4412_uboot
通过使用df -l命令查看盘符,确认盘符编号下面指令最后一位由盘符决定
执行命令烧写u-boot到TF卡:./mkuboot /dev/sdb(有可能sdc或者其它)
e) 检查可以烧写的 TF 卡是否制作成功。 检查的方法很简单,使用读卡器连接 TF 卡到Windows,如果在系统上发现 TF 卡的存储空间减少了部分空间,那么这个 TF 卡就制作成功了。
注:虚拟机下切换USB Device使用右下角的MTX USB Device
f) 在Widows下进入刚才的TF卡,新建文件夹sdupdate(只能使用该名字)
g)拷贝u-boot-iTOP-4412.bin(uboot,通用引导程序)、zImage(kernel,内核)
ramdisk-uboot.img和system.img(rootfs,根文件系统)到sdupdate,TF卡启动盘制作完成
(6)烧写烧写uboot,输入命令(不建议烧写):
sdfuse flash bootloader u-boot-iTOP-4412.bin
(7)烧写kernel,输入命令:
sdfuse flash kernel zImage
(8)烧写rootfs,输入命令:
sdfuse flash ramdisk ramdisk-uboot.img
sdfuse flash system system.img
(9)输入重启命令:reset
重启成功就可以使用全新的QT系统了。
三、出厂烧写
其实了解了出厂烧写是个什么东西就明白怎么操作了,原理上和上面的TF卡烧写一样。只是启动介质从eMMc变成了TF卡。这里就不写重复操作了,简单讲述一下整个过程
(1)将uboot烧录到TF卡中
(2)使用TF启动将TF卡分区
(3)拷贝四个压缩包(镜像)到sdupdate
(4)TF卡启动烧录全部镜像,可以使用sdfuse flashall
(5)重启
注:TF卡启动就是将编码改变为1001(靠近有数字一侧是0)
迅为iTOP-4412开发板: