嵌入式开发记录-day05 iTOP4412烧写linux最小系统镜像、Android 4.0系统
基于ITOP412烧写Linux最小系统:
1、所需要的文件:
04_镜像_Qt文件系统:ramdisk-uboot.img、u-boot-iTOP-4412.bin、zImage、system.img(好像是在对应的视频目录下)
2、需要的环境·:
安装ADB驱动,以及platform-tools中的ADB中的·CMD命令;
超级终端,以及USB转串口驱动;以及配置波特率115200,8N1,8位数据位,1位停止位;
3、将上面4个所需的文件拷贝到ADB目录下,与cmd在相同的目下;
4、开始烧写:fastboot
1 // 在超级终端中输入 2 fdisk -c 0 // 分区命令 对Nand 或者mmc分区,每个扇区大小为0,MMC的第0扇区一般放的是设备的分区信息,所以一般都是空闲的, 3 fatformat mmc 0:1 // 格式化命令 0号mmc设备1分区格式化 4 ext3format mmc 0:2 // 将mmc格式化为ext3格式, 对0好mmc设备2分区格式化为ext3格式 5 ext3format mmc 0:3 6 ext3format mmc 0:4 7 fastboot /// 此时开发板将通过OTG接口与电脑连接,从UBoot模式进入fastboot模式,准备使用USB进行数据传输,进入fastboot模式后,开发板就被模拟成一个
// android从机设备,所以此时电脑会识别出开发板为Android设备;如果没有驱动还会提醒驱动;
// 可以这样做,是上层协议实现的;因此重点是从u-boot角度如何实现这样的效果;
8 9 // 在platform-tools中输入: 10 fastboot.exe flash bootloader u-boot-iTOP-4412.bin // 刚开始学习时不建议烧写u-boot,熟悉后可以烧写,烧写boot loader 11 fastboot.exe flash kernel zImage // 烧写Linux内核镜像 12 fastboot.exe flash ramdisk ramdisk-uboot.img // 烧写文件系统 13 fastboot.exe flash system system.img // 14 15 fastboot -w 16 fastboot reboot // 重启
5、有一次少写了其他系统,板子启动不起来,按照上面的步骤,烧写了所有的文件。最终解决问题;
6、烧写Android镜像(从Linux最先系统转到Android)
之前学习这块的时候,按照教程也少烧写过Android系统,好像没有记录,这次学习的时候,记录下,不需要再去找资料了;
1、镜像组合:( 四个文件都在光盘目录“03_镜像_Android 文件系统)
Uboot 镜像“u-boot-iTOP-4412.bin”
内核镜像“zImage”
文件系统“ramdisk-uboot.img”和“system.img”
2、前面的磁盘分区,分区过很多次,都是相同的命令,这里没有再输入
3、开始烧写Android
板子进入uboot模式,输入fastboot(有时候会根据之前烧写的UBoot不同,可能需要输入fastboot 1),打开工具platform-tools,输入下面的命令
// 烧写uboot命令(不建议烧写,已经有了): fastboot.exe flash bootloader u-boot-iTOP-4412.bin // 烧写zImage内核命令: fastboot.exe flash kernel zImage // 输入烧写ramdisk 命令: fastboot.exe flash ramdisk ramdisk-uboot.img // 输入烧写system 文件系统命令: fastboot.exe flash system system.img // 输入擦除命令: fastboot -w //输入重启开发板命令 fastboot reboot
4、注意:有时候烧写完成后,板子可能自动重启,肯定烧写有问题。尝试更换一个uboot再次烧写,或者排除其他的镜像问题;
5、这里的Android 4.0是指zImage镜像android的内核的版本。其他的uboot、文件系统基本都是通用的。后面使用Android 4.4源码直接编译,烧
写镜像zImage就可以。