打印

【嵌入式学习笔记二】烧录制作好的镜像到4412开发板中

[复制链接]
172|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
说明:本来打算第二份笔记作开发环境搭建的,但是整个开发环境的搭建比较复杂,所以学到后面的时候再回过来系统的讲述一下如何搭建开发环境,这一节内容就讲如何烧录制作好的镜像到开发板中。</p>
一、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开发板:

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

376

主题

377

帖子

0

粉丝