一般Tiny4412出厂时已经安装好Android4.2.2系统,以后要重新烧写系统,则需要SD卡来烧写系统,无论是通过USB烧写,还是SD卡脱机烧写,都需要使用SD卡启动开发板来进行。
制作用于安装系统的SD卡的本质是:
将Tiny4412的Bootloader(Superboot4412.bin)烧写到SD卡的第一个分区,这样以后Tiny4412就可以通过SD卡启动了,利用Superboot的SD卡脱机烧写功能,将系统烧写到eMMC,达到重新安装系统的目的。
本步骤将执行以下操作:
SD-Flasher.exe会对SD卡进行分区,第一个分区为130M用于存放Superboot4412,剩下的空间格式化为FRIENDLYARM分区,用于存放系统文件images。有些小于256M的SD卡是无法使用的,我们推荐使用至少4G的SD卡。
以下是详细步骤,基于Windows7环境:
Step1:打开光盘\tools\目录,解压SD-Flasher-1327.7z得到SD-Flasher.exe烧写软件,启动它,请注意,你需要通过管理员身份来打开该软件才行,如图
启动SD-Flasher.exe软件时,会弹出“Select your Machine...”对话框,请在其中选择“Mini4412/Tiny4412”项:
点Next后将弹出SD-Flasher主界面,点击一下Scan,将列出你的SD卡,选中它,然后点“ReLayout”对SD卡进行分割,注意,本操作会将SD卡内的数据清空然后重新分区。
分割完成后,再点一下“Scan”,你会看到Available已变为可用状态,表示已分割完成:
Step2:点按钮找到所要烧写的Superboot4412.bin(默认位于光盘images/目录下,如光盘目录已移动过,注意不要放在中文目录下),如图:
Step3:点“Fuse”,Superboot4412.bin就会被安全地烧写到SD卡的无格式区中了,以后你再使用SD-Flasher制作SD卡时,无需再执行ReLayout操作,FAT32分区中的数据会得以保留。
Bootloader被写入SD卡后是无法看到的,该如何检测呢?
方法是把SD卡插到已连接串口的开发板上,并把开发板上S2开关设置为“SDBOOT”模式,开机后,串口上有信息输出,例如:
表示Bootloader已被写入SD卡,如果串口没有输出,说明没有烧写成功。
以下几种原因均有可能导致不行,并有解决方法:
1.使用了笔记本自带的读卡器,建议使用外接的usb读卡器,注意,有的外接usb读卡器也是不行的
2.使用了山寨的SD卡,请使用正品,最好是4G或以上的SDHC
3.使用了microSD+卡套,请使用普通的SD卡,因为卡套的方式非常容易导致接触不良
4.因接触不良导致无法使用SD卡启动的可能性比较大,建议多插拔几次试试,这包括(1)核心板和底板的接触,(2)SD卡座本身的接触
由于用户一般都会使用SD卡来存放一些其它的数据,因此,基于此考虑,SD-Flasher软件在Vista/Winows7中运行时,会把SD卡自动分割为普通的FAT32格式区(自动命名卷标为“FriendlyARM)和无格式区(占130M)两部分,烧写软件将会依据卷标名称作为标志,把bootloader烧写到无格式区,这样就不会破坏普通FAT32格式区中的数据了。
实际上,Vista/Windows7系统本身的安全性很高,普通用户是无法在Vista/Windows7系统上强制烧写SD卡的,因此必须要先分割才能写入。
另外,烧写Superboot4412.bin请务止使用Windows7运行SD-Flasher来操作,如果使用Windows XP,可能会烧写失败导致无法通过SD卡启动。
如需要使用SD卡脱机烧写系统功能,则可以将光盘上的images目录整个拷贝到SD卡的根目录下:
想要对嵌入式开发板进行开发和操作,都需要进行文件传输或者是控制,这时基本都是需要通过串口线或者是网线进行连接的,在Windows下是使用超级终端通过串口对开发板进行操作的,而在Linux下,最后最常见的串口调试工具就是minicom。minicom的安装过程还是比较简单的,对于操作过程也就是一个熟悉的过程,在其中的操作都是字符界面下的,只要知道熟悉,就能熟练运用了。
在终端中输入sudoapt-get install minicom安装。
第一次启动前,在终端中输入sudo minicom -s,对minicom进行第一次的配置。在弹出的对话框内,选择Serial port setup一项,
然后按下a键,修改为/dev/ttyUSB0,就是选择了UART0,然后按下回车;再按e,修改为115200 8N1,设置传输的比特率等设置,然后按下回车;再按f,把Hardware Flow Control修改为No,然后按下回车。再在刚才的主菜单中选择Save setup as dfl,保存为默认配置,最后选择Exit from minicom,退出配置菜单。
或者选择Exit直接进入minicom:
注:此步骤假设你的SD已经烧写了Superboot4412.bin,并且从光盘中拷贝了相应的烧写文件到SD卡上,拷贝方法是将光盘中整个images目录拷贝到SD卡的根目录下。
把SD卡插入电脑,双击打开”images\FriendlyARM.ini”文件,将FriendlyARM.ini的内容修改成如下内容(默认已经如此):
#This linecannot be removed. by FriendlyARM(www.arm9.net)
CheckOneButton=No
Action = Install
OS = Linux
LowFormat = No
VerifyNandWrite= No
LCD-Mode = No
CheckCRC32=No
StatusType =Beeper | LED
###################Linux ####################
Linux-BootLoader= Superboot4412.bin
Linux-Kernel =Linux/zImage
Linux-CommandLine= root=/dev/mmcblk0p1 rootfstype=ext4 console=ttySAC0,115200 init=/linuxrcctp=2
Linux-RamDisk =Linux/ramdisk-u.img
Linux-RootFs-InstallImage= Linux/rootfs_qtopia_qt4.img
注意,使用Tiny4412SDK 1308底板的用户,Android-CommandLine上还要加上uhost0=y,在使用Tiny4412SDK 1306底板的用户则无需指定。
使用电阻屏的用户,需要在Linux-CommandLine上,设置ctp=0及skipcali=n。
底板的版本在这里查看:
检查SD上至少存在如下文件,如果没有,从光盘中拷贝到SD卡(将光盘的images目录整个目录拷到SD卡的根目录即可):
然后上电开机,开始烧写系统时,LCD和串口终端会有进度显示。
烧写系统过程中,开发板“滴”一声,表示开始烧写系统,当发出两声“滴”,此时系统已经烧写完毕。在minicom中可以看到如下log信息,显示OS‘LINUX’ Installed:
系统烧写完成后,参照下图把开发板S2开关设置为“Nand”启动,然后重新开机即可启动新的Linux系统了。
此时可以在minicom中看到如下信息,表示系统烧写成功:
通过ls命令可以顺利进入系统的文件根目录:
接下来就可以进行其他操作了!