开发板烧录系统
Posted 想文艺一点的程序员
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开发板烧录系统相关的知识,希望对你有一定的参考价值。
开发板烧录系统
1、安装驱动
铺垫:安装 USB 转串口的驱动:
剩下的直接下一步就可以了。
安装好之后,在电脑的 设备管理 处,会出现一个端口,用来提示是 COM几。
注意点:
1、COM 号码可以进行修改:
- 点击右键 -> 属性 -> 端口设置 -> 高级 -> COM号。
- 并且还可以强制修改为 ”已占用“ 的COM号。
2、安装 SecureCRT
注意:
- 这个软件是已经可以直接运行的,不需要进行安装。
- 第一次使用会提示 软件未注册,根据《说明文档》,一步一步进行操作。
名字:Windows
公司:IC
序列号:03-50-006248
许可密钥:ADPUSB W3DQ5B ZC35EJ 99AG3T ACM47V SAK5W6 8CD1YZ GJU7JK
发布日期:27-06-2006
数据流控制一定要关闭,要不然不能进行通信。
我们要确定我们自己开发使用的是哪一个串口进行通信,我的默认是 串口2。
!!! 波特率是 115200
3、破坏 iNand 当中的 bootloader 从 SD2 启动
首先要查看开发的硬件手册,分析开发板不同的启动模式:
- emmc 启动:SD0 (iNand)、 SD2 (SD卡通道)
- 如果使用 emmc 启动,那么就会默认先执行 SD0 通道(iNand)当中的 bootloader,根本轮不到 SD2 通道。所以我们先将 iNand 当中的 bootloader 破坏掉。
- 检验自己 iNand 的 bootloader 是否完好:先将 SD卡拔掉,看看能不能正常启动。
第一步:busybox dd if=/dev/zero of=/dev/mmcblk0 bs=512 seek=1 count=1 conv=sync
第二步:sync
-
Linux 当中的 dd 命令:用来在Linux和类Unix系统下对硬盘设备进行 读写的命令
-
if=/dev/zero:input file 输入文件,全部为 0 。
-
of=/dev/mmcblk0:输出文件,mmc 的0通道 iNand。(即将 0 ,写入 mmc 的 0 通道当中)。
-
bs=512 :block size = 512 ,写入大小为 512 Byte,为一个扇区。
-
seek=blocks:从输出文件开头跳过blocks个块后再开始操作。
-
count=blocks:仅拷贝blocks个块,块大小等于 bs 指定的字节数。
-
conv = sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。
Linux 当中的 sync 命令:
Linux 系统中欲写入硬盘的资料有的时候为了效率起见,会写到 filesystem buffer 中,这个 buffer 是一块记忆体空间,如果欲写入硬盘的资料存于此 buffer 中,而系统又突然断电的话,那么资料就会流失了,sync 指令会将存于 buffer 中的资料强制写入硬盘中。
4、制作启动 SD 卡
制作 SD 启动卡,有两种方法:
- 在 Windows 当中,用 刷卡工具 对 SD 卡进行烧录。
- 在 Linux 当中,使用 dd 命令 对 SD 卡进行烧录。
我使用的是 九鼎 开发的 SD 卡烧录工具。uboot 使用的是开发板厂商经过裁剪的 uboot。
5、使用 fastboot 来部署环境
- fastboot 是一个 uboot 当中的命令。
- fastboot 也是 windows 上面的一个软件。
- fastboot 是使用 usb线 进行传输信息的。(windows 需要安装 fastboot 驱动。)
安装驱动:
开发板与主机通过usb线进行连接,并且uboot当中进入了 fastboot 命令,如果没有安装驱动就会提示以下信息:
单击右键 -> 更新驱动程序
选择这个文件夹
安装好之后:
第一步:先在 uboot 当中使用 fastboot 命令,让其进入下载状态。
第二步:在 Windows 上面使用 CMD ,从而使用 fastboot 程序。
开发板uboot 显示:
当在uboot 当中输入fastboot 就会显示当前的分区状况:
bootloader、kernel、ramdisk、config、system、cache、userdata
windows 命令行下面显示:
devices:查看当前的连接的设备
fastboot <partition> [<filename>] :fastboot 分区 文件名(分区对应的是 uboot 当中的分区)
烧录前提:
- 确认开发板与主机通过USB线进行连接。
- 确认安装了驱动。(可能需要解决数字签名的问题)
- 主要最后选项:文件路径,注意 uboot.bin 的存放路径。
fastboot flash bootloader android4.0/uboot.bin 烧uboot
.\\fastboot.exe flash kernel ..\\5、系统镜像\\Linux+QT\\zImage-qt (烧linux kernel)
.\\fastboot.exe flash system ..\\5、系统镜像\\Linux+QT\\rootfs_qt4.ext3 (烧文件系统,uboot 当中默认是 ext3 类型的)
烧录完成后注意:
- 修改 bootcmd :set bootcmd ‘movi read kernel 30008000; bootm 30008000’
- 修改 bootargs: set bootargs console=ttySAC2,115200 root=/dev/mmcblk0p2 rw init=/linuxrc rootfstype=ext3
- 最后一定要进行 save ,保存环境变量。
以上是关于开发板烧录系统的主要内容,如果未能解决你的问题,请参考以下文章