【北京迅为】iTOP-4412全能版使用手册-第六章 iTOP-4412系统固件的烧写

iTOP-4412全能版采用四核Cortex-A9,主频为1.4GHz-1.6GHz,配备S5M8767 电源管理,集成USB HUB,选用高品质板对板连接器稳定可靠,大厂生产,做工精良。接口一应俱全,开发更简单,搭载全网通4G、支持WIFI、蓝牙、陀螺仪、CAN总线、RS485总线、500万摄像头等模块,稳定运行Android 4.0.3/Android 4.4操作,系统通用Linux-3.0.15+Qt操作系统(QT支持5.7版本),Ubuntu版本:12.04,接口智能分配 方便好用。


第二部分 镜像烧写与源码编译

介绍了非设备树的Android,Qt系统镜像和设备树系统镜像的编译方法,以及烧写步骤。

视频资源:

ITOP-4412开发板视频教程\01-迅为电子开发板入门视频\视频11_01------04

ITOP-4412开发板视频教程\04-迅为电子Linux设备树视频教程

第六章 iTOP-4412系统固件的烧写

固件,即镜像,是一种文件形式,可以把许多文件做成一个镜像文件。说到底,镜像就是源代码编译并连接以后生成的可执行文件包,把这些镜像文件烧写到开发板的存储芯片里,开机就可以运行了。

烧写方式有两种,通过 TF 卡烧写以及使用 OTG 接口烧写。

注意 1:Android 系统和 Qt系统的烧写步骤完全一样,是通用的;不同的是镜像文件。

注意 2:无论是使用 OTG 接口方式还是使用 TF 卡方式都不需要设置拨码开关,只有在出现特殊情况时才需要调整拨码开关,在本章最后一小节会提到什么情况需要重新设置拨码开关。

6.1 拨码开关设置

用户可以通过拨码开关来选择启动方式,注意,初次使用不要随意改变拨码开关设置,拨动后一定要注意恢复,如果设置不当将导致系统无法启动,拨码开关如下图所示。

 

精英版是 4 键的拨码开关,按照上图的放置位置,从上到下编号依次分别是 4,3,2,1。其中 3 和 4 是用来选择使用屏幕的,1 和 2 是用来选择启动方式的。按照上图的放置位置,拨码开关拨到左侧是 1,拨到右侧是 0。

选择启动方式的设置如下表所示。

拨码开关编号

1

2

EMMC 启动

0

1

TF 卡启动

1

0

选择支持屏幕的设置如下表所示 

拨码开关编号

3

4

分辨率

9.7 寸屏幕

0

0

1024*768

塑胶壳 7 寸屏幕

0

1

1280*800

4.3 寸屏幕

1

0

480*272

金属框 7 寸屏幕

1

1

1024*600

10.1 寸屏幕

1

1

1024*600

HDMI 屏幕

1

1

1080P

5 寸屏幕

与拨码 3 和 4 无关,需要不同的内核

请注意:当拨码开关设置为 0111,HDMI 默认输出是 1024*600,如果需要支持 HDMI 输出 1080P 分辨率,需要修改内核,具体可以参考本手册 12.7.0 小节的方法。

6.2 OTG烧写工具的使用

硬件平台

1)使用串口线连接开发板串口(全能版是靠近网口的串口 CON3)到 PC 机串口

2)使用 OTG 线,将开发板 OTG 接口和 PC 的 USB 接口相连。

3)连接电源,屏幕等。

软件平台

1)首先保证PC端ADB驱动安装成功,因为 widows 的版本很多,推荐大家使用在线安装的办法,参考本手册第5.3.1章安装ADB驱动,如果PC 端无法联网可参考第6.9章离线安装ADB驱动。

2)打开串口工具(超级终端或者其它串口助手),设置默认波特率为 115200,参考“4.1 超级终端的使用”。

3)将光盘资料中的“iTOP-4412全功能版\20200624\iTOP-4412全功能版V4.0光盘资料\02_编译器以及烧写工具\tools\USB_fastboot_tool\platform-tools”拷贝到方便使用的地方,因为这个文件夹会经常被用到,注意不要拷贝到中文目录下(桌面不算是中文目录),如下图所示。OTG 烧写方式能可以在 xp、win7、win8、win8.1 和 win10 系统下实现。注意,如果用户不是在 Win7 环境下,需要使用用户系统自带的 cmd.exe。

 

6.3 OTG烧写Android系统

安装完ADB驱动,并且准备好platform-tools后即可进行烧写。

编译好的Android4.4.4 系统镜像都在光盘资料的“iTOP-4412全功能版\20200624\iTOP-4412全功能版V4.0光盘资料\03_镜像_Android4.4.4文件系统”下的文件夹内,

 

先根据手册2.1小节确定自己开发板的核心板的是 SCP 1G,SCP 2G 还是 POP。以下表格中将硬件和所需镜像一一对应。 

硬件组合

zImage

u-boot-iTOP- 4412.bin

ramdisk-uboot.img和system.img

POP+5 寸屏

zImage\LCD5X0\pop

uboot\pop\1G DDR

这两个文件系统镜像都在“system”目录中如果这个目录中还有其它镜像,它们也能适用于所有的硬件组合。

POP+其它屏幕

zImage\pop

uboot\pop\1G DDR

SCP 1G +5 寸屏

zImage\LCD5X0\scp

uboot\scp\1G DDR

SCP 1G +其它屏幕

zImage\scp

uboot\scp\1G DDR

SCP 2G +5 寸屏

zImage\LCD5X0\scp

uboot\scp\2G DDR

SCP 2G +其它屏幕

zImage\scp

uboot\scp\2G DDR

上面表格中“其它屏幕”表示 5 寸屏以外所有屏幕,没有屏幕也属于“其它屏幕”。

假如用户是 SCP 1G 核心板+4.3 寸屏,那么先看表格中第一列,定位到“SCP 1G +其它屏幕”第 5 行,第 5 行中的 2,3,4 列表示各个镜像所在的目录。

“SCP 1G 核心板+4.3 寸屏”的 Android4.4.4 镜像就需要“zImage\scp”中的 zImage,“zImage\scp”中的 u-boot-iTOP-4412.bin,“system”目录中的 ramdisk-uboot.img 和system.img,如果“system”目录中还有其它镜像文件,也和这个硬件组合对应。其它硬件组合的镜像依此类推。

将Android4.0.3 文件系统和核心板配套的镜像“ramdisk-uboot.img”、“system.img”、“u-boot-iTOP-4412.bin”、“zImage”拷贝到“USB_fastboot_tool\platform-tools”文件夹下面。

  1. 打开超级终端,然后上电启动开发板,按“回车”,进入 Uboot 模式,不明白uboot 模式可以参考“3.8 uboot 模式和文件系统模式”。如下图所示,进入 uboot 模式。

如果不能进入uboot命令行模式,参考“6.7出厂前首次T卡烧写”使用TF卡烧写uboot镜像到eMMC。

 

2)创建 eMMC 分区并格式化。如果原来已经做过此步骤,则可以跳过,不必每次烧写前都分区和格式化。在超级终端中,输入下面分区和格式化命令。

如下图所示,输入分区命令:fdisk -c 0

如下图所示,输入命令:fatformat mmc 0:1 

如下图所示,输入命令:ext3format mmc 0:2 

如下图所示,输入命令:ext3format mmc 0:3 

如下图所示,输入命令:ext3format mmc 0:4 

 如下图所示,在超级终端中,输入命令:fastboot

注意,fastboot 命令需要与 PC 上的 USB_fastboot_tool 工具配套使用,而且 fastboot 命令需要进入 uboot 模式中才能使用。

3)用 OTG 线将开发板 OTG 接口和 PC 的 USB 接口相连。除了硬件连接,还要按照“4.4.1 安卓 ADB 驱动的安装”安装 adb 驱动。

4)在 PC 机上运行“USB_fastboot_tool\platform-tools”文件夹中的文件“cmd.exe”(cmd.exe 可执行文件是 Windows 自带的命令行工具,如果用户使用的不是Win7 系统,假如提示版本不兼容,请使用用户自己 Windows 系统里面的 cmd.exe 工具,具体可以参考 5.3.3 cmd.exe 程序),如下图所示。

5)在 Windows 命令行中,输入下面的命令: 如下图所示,输入烧写 uboot 命令:

fastboot.exe flash bootloader u-boot-iTOP-4412.bin

特别提醒,不建议用户烧写“u-boot-iTOP-4412.bin”这个文件,可跳过此步骤,因为出厂前已经烧写过这个镜像文件了。更重要的是,如果在烧写这个文件过程中出问题的话,引导程序 UBOOT 会被破坏,开发板就变板砖,然后就只能通过 TF 卡的方式来烧写了。

 

如下图所示,输入烧写 zImage 内核命令:fastboot.exe flash kernel zImage 

 

如下图所示,输入烧写ramdisk命令:fastboot.exe flash ramdisk ramdisk-uboot.img 

 

如下图所示,输入烧写 system 文件系统命令:fastboot.exe flash system system.img 

 

如下图所示,输入擦除命令:fastboot -w 

 

注意:上述 fastboot.exe flash 命令可以分开执行,这样可以只烧写单个的镜像。

6)在 Windows 命令行中,输入重启开发板命令:fastboot reboot

 

输入重启命令之后,开发板会重启,超级终端会打印启动信息,第一次 Android 启动需要解压和安装一些初始化文件,会花费的时间长一点。第一次启动完成之后,再次启动速度就会快一些。

6.4 OTG烧写非设备树Qt系统

安装完ADB驱动,并且准备好platform-tools文件夹后即可进行烧写。

 编译好的QtE4.7 系统镜像都在光盘资料的“iTOP-4412全功能版\20200624\iTOP-4412全功能版V4.0光盘资料\04_镜像_QT文件系统”下的文件夹内,

这里注意:QtE4.7系统,最小linux系统,arm-Ubuntu系统的U-boot镜像(u-boot-iTOP-4412.bin),Kernel(zImage)镜像通用。

编译好的Qt5.7文件系统镜像(system.img)在网盘资料“iTOP4412开发板资料汇总(不含光盘内容)\iTOP-4412开发板系统源码及镜像(其他)\QtE5.7移植资料\QtE5.7系统升级目录\20180511”目录下(日期可能不同),U-boot和Kernel镜像与QtE4.7通用。

先根据手册2.1小节确定自己开发板的核心板的是 SCP 1G,SCP 2G 还是 POP。以下表格中将硬件和所需镜像一一对应。

硬件组合

zImage

u-boot-iTOP-4412.bin

ramdisk-uboot.img 和system.img

POP+5 寸屏

zImage\LCD5X0\pop

uboot\pop\1G DDR

所有硬件组合的这两个镜像全部都是在“system”目录中

POP+其它屏幕

zImage\pop

uboot\pop\1G DDR

SCP 1G +5 寸屏

zImage\LCD5X0\scp

uboot\scp\1G DDR

SCP 1G +其它屏幕

zImage\scp

uboot\scp\1G DDR

SCP 2G +5 寸屏

zImage\LCD5X0\scp

uboot\scp\2G DDR

SCP 2G +其它屏幕

zImage\scp

uboot\scp\2G DDR

上面表格中“其它屏幕”表示 5 寸屏以外所有屏幕,另外没有屏幕也属于“其它屏幕”。假如用户是 SCP 1G 核心板+4.3 寸屏,那么先看表格中第一列,定位到“SCP 1G +其它

屏幕”第 5 行,第 5 行中的 2,3,4 列表示各个镜像所在的目录。

“SCP 1G 核心板+4.3 寸屏”的 Qt 镜像就需要“zImage\scp”中的 zImage,“zImage\scp”中的 u-boot-iTOP-4412.bin,“system”目录中的 ramdisk-uboot.img 和 system.img。其它硬件组合的镜像依此类推。

 

  1. 打开超级终端,然后上电启动开发板,按“回车”,进入 Uboot 模式,不明白uboot 模式可以参考“3.8 uboot 模式和文件系统模式”。如下图所示,进入 uboot 模式。

如果不能进入uboot命令行模式,参考“6.7出厂前首次T卡烧写”使用TF卡烧写uboot镜像到eMMC。

 

2)创建 eMMC 分区并格式化。如果原来已经做过此步骤,则可以跳过,不必每次烧写前都分区和格式化。在超级终端中,输入下面分区和格式化命令。

如下图所示,输入分区命令:fdisk -c 0

如下图所示,输入命令:fatformat mmc 0:1 

如下图所示,输入命令:ext3format mmc 0:2 

如下图所示,输入命令:ext3format mmc 0:3 

 

如下图所示,输入命令:ext3format mmc 0:4 

 如下图所示,在超级终端中,输入命令:fastboot

注意,fastboot 命令需要与 PC 上的 USB_fastboot_tool 工具配套使用,而且 fastboot 命令需要进入 uboot 模式中才能使用。

3)用 OTG 线将开发板 OTG 接口和 PC 的 USB 接口相连。除了硬件连接,还要按照“4.4.1 安卓 ADB 驱动的安装”安装 adb 驱动。

4)在 PC 机上运行“USB_fastboot_tool”-->“platform-tools”文件夹中的文件“cmd.exe”(cmd.exe 可执行文件是 Windows 自带的命令行工具,如果用户使用的不是Win7 系统,假如提示版本不兼容,请使用用户自己 Windows 系统里面的 cmd.exe 工具,具体可以参考 4.4.2.1 cmd.exe 程序),如下图所示。

 

5)在 Windows 命令行中,输入下面的命令: 如下图所示,输入烧写 uboot 命令:

fastboot.exe flash bootloader u-boot-iTOP-4412.bin

特别提醒,不建议用户烧写“u-boot-iTOP-4412.bin”这个文件,可跳过此步骤,因为出厂前已经烧写过这个镜像文件了。更重要的是,如果在烧写这个文件过程中出问题的话,引导程序 UBOOT 会被破坏,开发板就变板砖,然后就只能通过 TF 卡的方式来烧写了。

 

如下图所示,输入烧写 zImage 内核命令:fastboot.exe flash kernel zImage 

 

如下图所示,输入烧写ramdisk命令:fastboot.exe flash ramdisk ramdisk-uboot.img 

 

如下图所示,输入烧写 system 文件系统命令:fastboot.exe flash system system.img 

 

如下图所示,输入擦除命令:fastboot -w 

 

注意:上述 fastboot.exe flash 命令可以分开执行,这样可以只烧写单个的镜像。

6)在 Windows 命令行中,输入重启开发板命令:fastboot reboot

 

输入重启命令之后,开发板会重启,超级终端会打印启动信息,第一次 Android 启动需要解压和安装一些初始化文件,会花费的时间长一点。第一次启动完成之后,再次启动速度就会快一些。 

6.5 OTG烧写设备树系统

编译好的SCP版本设备树镜像在“iTOP4412开发板资料汇总(不含光盘内容)\iTOP-4412开发板设备树资料-20200403(以最新日期为准)\scp\镜像”,POP版本的设备树镜像在“iTOP4412开发板资料汇总(不含光盘内容)\iTOP-4412开发板设备树资料-20200403(以最新日期为准)\pop\镜像”,烧写前将u-boot-iTOP-4412.bin,exynos4412-itop-elite.dtb,uImage,system.img拷贝到platform-tools文件夹内。

烧写步骤和 4412 默认镜像的烧写类似,使用 fastboot。烧写设备树系统首先要在开发板运行支持设备树的u-boot。如果开发板上运行的不是支持设备树的uboot,要参考上一节烧写u-boot-iTOP-4412.bin,完成后重启开发板才能烧写设备树系统。如果不能进入uboot命令行模式,参考“6.7出厂前首次T卡烧写”使用TF卡烧写uboot镜像到eMMC。

重启开发板, 在支持设备树的 uboot 控制台, 如下图输入命令: fastboot 0

这里可能需要安装一下ADB驱动,使用驱动精灵自动安装即可(参考5.3安装ADB驱动)。

 

打开烧写工具platform-tools文件夹内的cmd.exe,在 cmd 命令行输入以下命令烧写内核设备树文件系统,用 fastboot 烧写u-boot镜像,输入命令:fastboot.exe flash bootloader u-boot-iTOP-4412.bin 

烧写内核镜像:fastboot.exe flash kernel uImage 

烧写设备树镜像:fastboot.exe flash dtb exynos4412-itop-elite.dtb 

 

烧写文件系统(时间会长一些):fastboot.exe flash system system.img 

 

输入重启命令:fastboot.exe reboot 

观察超级终端控制台,进入文件系统表明运行成功。

6.6 TF卡烧写

此烧写方式要保证开发板能正常进入uboot模式,然后将TF卡内的 Android 系统或 QT 系统烧写到eMMC。此外TF 卡存储容量最少要 2G 。

制作可以烧写的TF卡

注意:制作可以烧写的 TF 卡需要用到 Ubuntu 系统,用户需要学习 Ubuntu 的使用, Ubuntu 的安装和使用可以参考第四章和第五章。另外使用这种方式要求核心板的 uboot 可以正常启动,如果核心板的 uboot 无法启动,请参考本手册“7.8 小节开发板出厂前首次烧写”。

本节制作 TF 卡的方法需要核心板的 eMMC 能够正常启动并打印信息,也就是说,要求核心板已经预装了 UBOOT 引导程序。

使用 TF 卡之前,必须要先分区。制作 TF 卡需要在 PC 机的 Ubuntu 系统下,分 3 个步骤来完成。这里需要注意的是,TF 卡制作完成后,就可长期使用,不用每次重新制作;另外如果烧坏了 eMMC 的 uboot,那么将无法进行分区,就要参考 6.4 小节先给 TF 卡分区。

1)给 TF 卡分区。需要将 TF 卡先插入开发板,然后再启动开发板并进入 Uboot 模式,然后在超级终端中,依次输入下列烧写命令:

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)如下图所示,在光盘文件夹“iTOP-4412全功能版\20200624\iTOP-4412全功能版V4.0光盘资料\06_源码_uboot 和 kernel”中有一个压缩包“iTop4412_uboot_xxx.tar.gz”,压缩包文件名中的“xxx”代表不确定,“xxx”表示日期,日期信息在系统升级后会变更。

 

3)使用 SSH 工具(参考4.5.2章节)拷贝压缩包“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 系统的硬盘盘符后, 再插入 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 卡制作完成后即可进行烧写,步骤如下:

1)将制作完成的 TF 卡接入 PC 机的 Window 系统中,在 TF 卡上建立文件夹“sdupdate”。注意,文件夹名字一定要使用“sdupdate”。如下图所示。

 

2)拷贝相应的镜像文件到 TF 卡的文件夹“sdupdate”中,如下图所示。

Android 4.0.3 的配套镜像参考“6.1.1 Android4.0.3 和三种核心板配套的镜像”,然后拷贝对应镜像到“sdupdate”文件夹下。

Qt 的配套镜像参考“6.1.2 Qt 和三种核心板配套的镜像”,然后拷贝对应镜像到“sdupdate”文件夹下。

无论是 Android4.0.3 还是 Qt 系统,都建议不拷贝“u-boot-iTOP-4412.bin”这个镜像。因为引导程序 UBOOT 一旦被破坏,就只能通过 TF 卡来恢复了。

 

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重启开发板。

FormatTool.exe 格式化工具

可以烧写的 TF 卡会少一部分空间,如果想恢复成的正常的 TF 卡,可以使用FormatTool.exe 格式化工具。

在网盘目录“iTOP4412 开发板资料汇总(不含光盘内容)\iTOP-4412 开发板所需 PC 软件(工具)\09-盘符格式化工具”文件夹下有压缩包“FormatTool.zip”,解压之后得到“FormatTool.exe”,双击打开,界面如下所示。

 

注意,需要选择正确的盘符,如果选择硬盘盘符,软件也会将其中的数据格式化。选择盘符之后,点击确定,完成格式化,TF 卡恢复正常。

6.7 出厂前首次TF卡烧写(uboot不能启动)

在前面几个小节中,介绍制作 TF 卡的时候,都需要依赖核心板的存储介质 eMMC 已经烧写好了 uboot,当核心板的 uboot 分区被烧写了错误的文件,导致开发板不能启动uboot,那么就需要使用本节的方法来解决了。

全新的 TF 卡并不能直接用于烧写镜像,也就是说,一张全新的 TF 卡需要经过分区、烧写 uboot 等步骤后才能用于烧写。

下面具体介绍如何制作可以烧写的 TF 卡,首先确定 TF 卡是 FAT32 格式的。

1)在 Ubuntu 命令行中输入 Linux 命令“df -l”,查看一下 Ubuntu 系统有哪些盘符。如下图所示。

2)接着使用读卡器将 TF 卡连接到 PC 机的 Ubuntu 系统下,Ubuntu 系统识别 TF 卡后,再次使用 Linux 命令“df -l”查看盘符。将第二次查看的盘符和第一次查看的盘符对比一下,就会发现 Ubuntu 系统中多出一个盘符,这个盘符就是 TF 卡的盘符,TF 卡盘符名称在接下来的 Linux 命令中会用到,如下图所示。

 

3)拷贝用户光盘“06_源码_uboot 和 kernel”文件夹中的文件“iTop- 4412_uboot_xxx”到 Ubuntu 系统中解压,得到文件夹“iTop4412_uboot”。拷贝对应核心板的文件“u-boot-iTOP-4412.bin”到前面解压出来的文件夹" iTop4412_uboot "中。然后我们进入前面解压出来的文件夹" iTop4412_uboot"中,如下图所示。 

4)烧写文件“u-boot-iTOP-4412.bin”到 TF 卡,具体操作如下。

在执行下面这条命令的时候,要特别特别注意!一定要分清楚,哪个盘符是 TF 卡的盘符,如果不清楚,请务必先拔掉 TF 卡,在看清楚哪些盘符是 Ubuntu 系统的硬盘盘符后,再插入 TF 卡(这一切都是为了避免错误地格式化其他分区),分辨出哪个盘符是新增加的盘 符,新增加的盘符才是 TF 卡的盘符。

在 Ubuntu 命令行中,执行命令“./mkuboot /dev/sdx”(“sdx”就是前面查到的 TF卡盘符名,不要带数字,比如 df -l 看到的 tf 卡是/dev/sdb0,这个 0 不要带,直接写 sdb)需要注意的是,上面的命令需要在文件夹" iTop4412_uboot_xxx "中执行。这个文件夹是解压 uboot 源码之后得到的文件夹。

如果这里识别为“/dev/sdb1”,那么如下图所示,使用命令“./mkuboot /dev/sdb”,这里注意不要带后面盘符的编号。

5)将开发板的拨码开关置于 TF 卡启动模式,先插入经过上一步处理的 TF 卡,启动开发板,进入 uboot 模式,对 TF 卡进行分区,具体操作如下。

在超级终端中,执行下面的命令。

fdisk -c 1 300 300 300

fatformat mmc 1:1

ext3format mmc 1:2

ext3format mmc 1:3

ext3format mmc 1:4

6)到上一步,TF 卡就制作好了。下面继续介绍如何使用制作好的 TF 卡。

7)将 TF 卡重新插入 PC 机,并在 TF 卡上新建文件夹“sdupdate”,将 uboot 等四个文件拷贝到“sdupdate”文件夹中,也可以选择只拷贝 uboot 文件,如下图所示。

 

8)再将 TF 卡插入开发板,设置开发板为 TF 卡启动模式,然后启动开发板。对 eMMC 进行格式化分区命令以及擦除命令,最后使用命令“sdfuse flashall”,就可以将 uboot、内核以及文件系统更新到开发板的 eMMC 中,这里也可以选择只更新 uboot。具体步骤如下:

在超级终端中,执行下面的命令。

fdisk -c 0

fatformat mmc 0:1

ext3format mmc 0:2

ext3format mmc 0:3

ext3format mmc 0:4

sdfuse flashall

9)烧写镜像完成之后,将开发板设置为 eMMC 启动模式,开发板就可以正常启动了。如果上一步只选择烧写了 uboot,然后可以使用 fastboot 或者 TF 卡来进一步烧写内核或者文件系统的镜像,烧写方法参考 7.5 或者 7.7 小节。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值