找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5931|回复: 1
打印 上一主题 下一主题
收起左侧

嵌入式开发学习笔记一:烧写android系统

[复制链接]
跳转到指定楼层
楼主
我之前学过单片机arm和c语言就直接买了这款4412板子,开始还担心跨度有点大学不会呢,现在想想还好选了这款,给的资料和视频教程少走不少弯路,分享一下学习笔记。。。
平台: iTOP-4412开发平台
系统:Android 4.0
TF 卡存储容量最少要 2G 以上。
制作可以烧写的TF
使用 TF 卡之前,必须要先分区。制作 TF 卡需要在 PC 机的 Ubuntu 系统下,分 3 个步骤来完成。这里需要注意的是,TF 卡制作完成后,就可长期使用,不用每次重新制作,另外如果烧坏了 eMMCuboot,那么将无法进行分区,就要参考 4.5 小节先给 TF 卡分区。
1. TF 卡分区。需要将 TF 卡先插入开发板,然后再启动开发板并进入 Uboot 模式
(如何进入可参考前面 2-5 节),然后在超级终端中,依次输入下列烧写命令:
fdisk -c 1
注意上面的分区命令的是参数1”,代表的是 tf 卡,如果是“0”则代表是 eMMC
如果是 2G TF 卡,请将命令“fdisk -c 1”改为“fdisk -c 1 300 300 300”。
fatformat mmc 1:1
ext3format mmc 1:2
ext3format mmc 1:3
ext3format mmc 1:4
执行完上面的命令之后,就要将 uboot 烧写到 TF 卡。
2. 如下图所示,在光盘文件夹“06_源码_uboot kernel”中有一个压缩包
iTop4412_uboot_xxx.tar.gz”,压缩包文件名中的“xxx”代表不确定,“xxx”表示日
期,日期信息在系统升级后会变更。
3. 使用 SSH 工具(参考使用手册 3.3.5 安装和使用 SSH 软件),拷贝压缩包
iTop4412_uboot_xxx.tar.gz”到 PC 机的 Ubuntu 系统中,然后解压压缩包,得到文件夹
iTop4412_uboot”,进入“iTop4412_uboot”文件夹,如下图所示。
4. 拷贝光盘中文件夹中对应核心板的镜像“u-boot-iTOP-4412.bin”到上一步解压出来
的文件夹iTop4412_uboot”中,如下图所示。
5. Ubuntu 命令行中输入命令“df -l”,查看一下系统有哪些盘符。
6. 接着使用读卡器将 TF 卡连接到 PC 机的 Ubuntu 系统下,如下图所示,Ubuntu 系统
识别 TF 卡后,可能提示下面的信息。
7. 在虚拟机 VMware Workstation 选项“虚拟机 M”,进入“虚拟机设置”,如下图
所示,根据 USB接口选择一下版本,如果是 USB3.0 则使用 USB3.0
8. TF 卡连接之后到 Ubuntu 之后, 再次使用 Linux 命令“df -l”查看盘符。将第二次
查看的盘符和第一次查看的盘符对比一下,就会发现 Ubuntu 系统中多出了盘符,这个盘符就是 TF 卡的盘符,盘符名称在接下来的 Linux 命令中会用到,如下图所示。
9. 在执行下面这条命令的时候,要特别特别注意!一定要分清楚,哪个盘符是 TF 卡的
盘符,如果不清楚,请务必先拔掉 TF 卡,看清楚哪些盘符是属于 Ubuntu 系统的硬盘盘符,
看清楚哪些盘符是 Ubuntu 系统的硬盘盘符后,再插入 TF 卡,分辨出哪个盘符是新增加的盘符,新增加的盘符才是 TF 卡的盘符。
10. 进入文件夹iTop4412_uboot”中。在 Ubuntu 命令行中,执行 Linux 命令:
./mkuboot /dev/sdx”,mkuboot uboot 源码文件夹中的一个脚本,下图中脚本
命令的对象是上图中识别的sdb”。
(注意,sdx 用前面查看盘符,多出来的盘符名代替,不要带数字,比如 df -l 看到的 tf
/dev/sdb0,这个 0 不要带,直接写 sdb)
11. 检查可以烧写的 TF 卡是否制作成功。
检查的方法很简单,使用读卡器连接 TF 卡到 Win7系统上,如果在 Win7 系统上发现 TF
卡的存储空间减少了 2G 以上,那么这个 TF 卡就制作成功了。如下图所示,8G TF 卡只剩5.68G
使用TF卡烧写
Win7 系统和 Ubuntu 系统下,都可以使用 TF 卡烧写。这里以 Win7 为例,Ubuntu
的也是一样,将镜像文件拷贝到 tf 卡中的“sdupdate”文件夹中。
Win7 TF 卡烧写步骤如下:
1. 将制作完成的 TF 卡接入 PC 机的 Win7 或者 Ubuntu 系统中,在 TF 卡上建立文件夹
sdupdate”。注意,文件夹名字一定要使用“sdupdate”。如下图所示。
2. 拷贝相应的镜像文件到 TF 卡的文件夹“sdupdate”中,如下图所示。
3. TF 卡先插入开发板中,进入超级终端的 UBOOT模式,如下图所示。
4. 输入烧写命令sdfuse flashall”。
这是一个全部烧写的命令,就是将sdupdate”中全部的镜像烧写到开发板中,如下图
所示。
烧写命令sdfuse flashall”可以用下面替代的烧写命令:
sdfuse flash bootloader u-boot-iTOP-4412.bin
sdfuse flash kernel zImage
sdfuse flash ramdisk ramdisk-uboot.img
sdfuse flash system system.img
替代的烧写命令允许单条执行,在执行单条烧写命令的时候,只烧写相应的单个镜像文
件。例如,执行烧写命令sdfuse flash kernel zImage”,就只会更新 Linux 内核
zImage”镜像,而不会影响其他的镜像。
5. 等待烧写完成,最后在超级终端中,输入以下命令:
reset(在超级终端中执行该命令会重启开发板)
完成。



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:215707 发表于 2017-6-29 09:58 | 只看该作者
待着疑问学习了,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表