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

说明:本来打算第二份笔记作开发环境搭建的,但是整个开发环境的搭建比较复杂,所以学到后面的时候再回过来系统的讲述一下如何搭建开发环境,这一节内容就讲如何烧录制作好的镜像到开发板中。

一、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开发板:

详情了解:http://topeetboard.com  更多了解:https://arm-board.taobao.com

时间: 2024-08-02 11:03:36

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

[学习开发板怎么选]迅为4412开发板帮你入门嵌入式

丰富选配模块 入门视频教程(购买后提供完整版高清教程)部分视频观看地址: [视频教程]iTOP-4412开发板之学习方法--致初学者 http://v.youku.com/v_show/id_XNzQ5MDA4NzM2.html [视频教程]三星Exynos 4412处理器开发要点 http://v.youku.com/v_show/id_XNjIwODA0MTY4.html [视频教程]iTOP-4412开发板之如何扩展不同型号LCD屏 http://v.youku.com/v_show/id

【Unity 3D】学习笔记二十九:游戏实例——简单小地图制作

任何的学习,光看不练是学不好的.所以这次就总结回顾下怎么制作MMROPG类游戏中的小地图.在MMROPG类游戏里,主角在游戏世界里走动时,一般在屏幕右上角都会有一个区域来显示当前游戏场景的小地图.主角在游戏世界里走动,小地图里代表着主角的小标记也会随之移动.那怎么实现咧? 首先需要确定两个贴图,第一个是右上角的小地图背景贴图,应该是从Y轴俯视向下截取主角所在的位置大地图.第二个就是主角的位置大贴图.在本例中,因为没有学习unity地图制作,所以地图用一个面对象代替,主角用立方体代替,使用GUI来

嵌入式学习笔记201-Linux kernel动起来

在前篇博文<嵌入式学习笔记200-Linux kernel初体验>在已经确保环境编译是ok的,接下来让kernel能够最基本的动起来,起码可以看到基本的启动打印! 修改外部输入时钟频率, 修改 linux-2.6.30.4\arch\arm\mach-s3c2440\mach-smdk2440.c 在大概163行将16934400改成12000000. static void __init smdk2440_map_io(void) { s3c24xx_init_io(smdk2440_iod

嵌入式学习笔记101-uboot_1.1.6移植(1)

根据前篇博文(嵌入式学习笔记100-uboot1.1.6初体验)最后的结论,现在开始将其实现: a. 修改makefile的CROSS_COMPILE指定编译器 arm-linux-gcc -v –> gcc version 3.4.5 CROSS_COMPILE = /opt/EmbedSky/crosstools_3.4.5_softfloat/gcc-3.4.5-glibc-2.3.6/arm-linux/bin/arm-linux- chmod -R 777 u-boot-1.1.6/

Caliburn.Micro学习笔记(二)----Actions

Caliburn.Micro学习笔记(二)----Actions 上一篇已经简单说了一下引导类和简单的控件绑定 我的上一个例子里的button自动匹配到ViewModel事件你一定感觉很好玩吧 今天说一下它的Actions,看一下Caliburn.Micro给我们提供了多强大的支持 我们还是从做例子开始 demo的源码下载在文章的最后 例子1.无参数方法调用 点击button把textBox输入的文本弹出来 如果textbox里没有文本button不可点,看一下效果图 看一下前台代码 <Stac

2. 蛤蟆Python脚本学习笔记二基本命令畅玩

2. 蛤蟆Python脚本学习笔记二基本命令畅玩 本篇名言:"成功源于发现细节,没有细节就没有机遇,留心细节意味着创造机遇.一件司空见惯的小事或许就可能是打开机遇宝库的钥匙!" 下班回家,咱先来看下一些常用的基本命令. 欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/48092873 1.  数字和表达式 看下图1一就能说明很多问题: 加法,整除,浮点除,取模,幂乘方等.是不是很直接也很粗暴. 关于上限,蛤蟆不太清楚

嵌入式学习笔记008-裸奔篇之串口

串口是个好东西,前几篇裸奔程序由于没有串口,自己调试都是有led等来表示的,比较"苦逼",终于可以用串口了~~~,这里主要采用上一篇博文(嵌入式学习笔记007-裸奔篇之定时器),也就是串口也是用中断实现的,而且也只是在前一篇博文增加串口的初始化uart0_init(),以及在中断处理函数增加对串口的处理.只要稍微改造前一篇博文就是一个通用的中断处理程序! 这里主要实现在串口输入一个字符,接受后+2再发送到串口,所以在串口输入a 会返回c---. 由于code都有相应的注释,读者自行查看

小猪的数据结构学习笔记(二)

小猪的数据结构学习笔记(二) 线性表中的顺序表 本节引言: 在上个章节中,我们对数据结构与算法的相关概念进行了了解,知道数据结构的 逻辑结构与物理结构的区别,算法的特性以及设计要求;还学了如何去衡量一个算法 的好坏,以及时间复杂度的计算!在本节中我们将接触第一个数据结构--线性表; 而线性表有两种表现形式,分别是顺序表和链表;学好这一章很重要,是学习后面的基石; 这一节我们会重点学习下顺序表,在这里给大家一个忠告,学编程切忌眼高手低,看懂不代表自己 写得出来,给出的实现代码,自己要理解思路,自己

JavaScript--基于对象的脚本语言学习笔记(二)

第二部分:DOM编程 1.文档象模型(DOM)提供了访问结构化文档的一种方式,很多语言自己的DOM解析器. DOM解析器就是完成结构化文档和DOM树之间的转换关系. DOM解析器解析结构化文档:将磁盘上的结构化文档转换成内存中的DOM树 从DOM树输出结构化文档:将内存中的DOM树转换成磁盘上的结构化文档 2.DOM模型扩展了HTML元素,为几乎所有的HTML元素都新增了innerHTML属性,该属性代表该元素的"内容",即返回的某个元素的开始标签.结束标签之间的字符串内容(不包含其它