找回密码
 注册
关于网站域名变更的通知
查看: 817|回复: 2
打印 上一主题 下一主题

iMX6ULL基础操作-系统烧写指南

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-12-21 16:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 祢豆子 于 2020-12-21 16:51 编辑
' v& h# S$ v5 y+ j
, ?' r% h* r, x- }% j) |& H

本文以飞凌嵌入式OKMX6ULL-S开发板为基础讲解,本文分为三个部分,主要讲解了iMX6ULL SD卡烧写系统及OTG烧写系统的以及单步更新内核的步骤。通过本文您可以快速实现飞凌iMX6ULL开发板系统烧写。

一、 SD卡烧写系统

以nand- sdburn为例,烧写NAND进行操作说明,飞凌iMX6ULL拨码开关设置参考如下。


, f) _* W' f" N1 O6 M, i0 X0 G1 S# q8 I4 n5 \6 w) y( ?) s

设置拨码开关:

烧写/启动

序号1

序号2

序号3

序号4

序号5

序号6

序号7

序号8

SD卡烧写

0

0

1

0

1

0

0

1

EMM[color=inherit !important]C启动

0

0

1

0

0

0

0

0

NAND启动

0

0

0

1

1

0

0

1

OTG烧写

1

1

X

X

X

X

X

X

9 d9 K+ |! k3 E1 [. q  C4 A

注意:上表中“1”代表ON,“0”代表OFF,“X”代表无关。


( K" X2 p  I) d  j! i7 r
( a% n* v9 l  F/ q6 {1、 制作SD卡

将文件nand-burnsd拷贝到Ubuntu 系统的任一目录,假设为/home/neo/work。

用户资料\[color=inherit !important]Linux\烧录工具\nand-sdburn.zip   为256M NAND文件系统。

用户资料\Linux\烧录工具\ emmc-sdburn.zip   为4G EMMC文件系统。

步骤1:nand-burnsd.zip解压后拷贝到/home/neo/work。

步骤2:使用 USB 读卡器把SD 卡插入到电脑的USB 端口(VMware 虚拟机用户如果U盘没有被虚拟机识别,可以使用如下箭头指向图标将优盘连接到虚拟机)。

步骤3:待虚拟机识别到SD卡后弹出目录再进行下边烧写操作。进入/home/neo/work/nand-burnsd目录,执行脚本:


% D# Z' g! L7 q/ t- l- O: m+ ?9 y% l% ?/ h2 Y

' B5 P8 R& l. e! {% I- F' S! v- Tneo@[color=inherit !important]ubuntu:~/work/nand-burnsd$ sudo ./6ullsdburn.sh

执行上述命令后,终端会列出电脑的硬盘或U盘,对应选择自己的SD 卡,回车。

注意:判定自己的U盘是 sda/sdb/sdc 可以根据容量进行判断,比如自己的优盘容量为4G,则其size 为3872256 KB≈ 4G,建议用户执行此操作时不要同时插入多个优盘,以免混淆。

这里以我们的操作为例:

选择 1 ,回车

选择y,回车,等待至制卡完成。

若打印信息中没有下图红框中标识的信息,则SD卡挂载失败,则需要使用Ubuntu重新卸载并挂载。

卡制作完成后可以看到boot 分区包含sdrun和target两个目录。sdrun 文件夹内容用于引导系统烧写,无需修改;target目录内容会烧写到flash[color=inherit !important]芯片。如果需要替换镜像文件,只需将target目录中的对应文件替换掉,并保持同样的命名,之后再重新进行系统烧写。

2、SD卡烧写系统

将上一节中制作好的SD卡插入,同时将拨码开关置于下图所示。3、5、8 均为ON,1、2、4、6、7均为 OFF,如下图。此时将SD卡中target的内容烧写到NAND中。


/ ?' d4 p8 C# p7 o/ I' t0 V+ ]lib/modules/4.1.15-00026-g407ada6-dirty/modules.softdeplib/modules/4.1.15-00026-g407ada6-dirty/sourcelib/modules/4.1.15-00026-g407ada6-dirty/modules.dep.binlib/modules/4.1.15-00026-g407ada6-dirty/modules.symbolsUpdate Complete!!!!!!!  C; {* u) n' P8 Q

同时iMX6ULL底板上的LED闪烁。烧写时间较长,等待系统烧写完成之后,串口打印信息:

烧写完成之后,断电,将拨码开关拨到4、5、8均为ON,1、2、3、6、7均为OFF,重新上电iMX6ULL开发板,NAND启动。

3、OTG烧写系统

注意:使用OTG烧写时,iMX6ULL开发板不能插入SD卡。

mx6ull-4gemmc-512mddr-qt5.6.vbs        烧写4GeMMC+512MDDR的系统

mx6ull-256mnand-256mddr-cmd.vbs       烧写256MNAND+256MDDR系统

①、 首先将烧写工具Mfg工具拷贝到 windows 下解压,烧写工具路径如下所示:用户资料\Linux\烧录工具\ mfgtools.zip

②、5V电源供电如图,开关拨到供电口端:

③、拨码开关设置为 1、2为ON,其他状态任意。如图:

$ q9 H# @! s3 Y/ c; _7 b0 n

④、双击“ mx6ull-256mnand-256mddr-cmd.vbs ”(已写好脚本,直接烧写),如下图:

⑤、插入USB OTG,如下图:

自动识别为HID,如图:

⑥、点击start,开始烧写系统,中间弹出格式化对话框,点击“取消”格式化选项,或者不管它,直到烧写完成。如图:

⑦、系统烧写完成之后,出现“Done”,之后点击“stop”,停止。再点击“Exit”,关闭烧写烧写工具。断电,将拨码开关拨到4、5、8均为ON,1、2、3、6、7均为OFF,重新上电iMX6ULL开发板,NAND启动。

5 g: S! `. P) q- Z6 S
二、单步更新内核1、 eMMC单步更新内核

系统启动后,将待替换设备树放于u盘中,插入到开发板上,在超级终端输入命令:

/ c& v: D, U7 C8 d1 }/ u% q, o/ S. u6 ?
root@fl-imx6ull:~# cp /run/media/sda1/imx6ull-S-gpmi-1024x600c7.dtb  /run/media/mmcblk1p1/imx6ull-S-gpmi-1024x600c7.dtbroot@fl-imx6ull:~# cp /run/media/sda1/zImage  /run/media/mmcblk1p1/zImageroot@fl-imx6ull:~# syncroot@fl-imx6ull:~# reboot. d5 `& M2 B" o% D

重启后,到[color=inherit !important]uboot阶段选择对应dtb即可。

2、 Nand单步更新内核

更新dtb以及内核,logo,可以使用nandwrite命令,该命令也已经打包在文件系统中。使用时,要将待烧写的dtb、logo、 zImage文件复制到文件系统的某个目录下(本文示例为/root),然后擦除掉对应分区中的旧固件,再分别使用nandwrite命令将新的固件写到对应的分区中。参考命令如下所示:


; u! Q. G* t0 W/ P/ v  P* f* ?* ^7 lroot@fl-imx6ull:~# flash_erase /dev/mtd4 0 0Erasing 128 Kibyte @ 7e0000 -- 100 % completeroot@fl-imx6ull:~# nandwrite -p /dev/mtd4 /run/media/sda1/target/zImageWriting data to block 0 at offset 0x0Writing data to block 1 at offset 0x20000Writing data to block 2 at offset 0x40000…

更新内核:


6 Q2 V; [3 ~1 k

更新dtb:

& v* T9 b- ~" Y& A
root@fl-imx6ull:~# flash_erase /dev/mtd3 0 0Erasing 128 Kibyte @ 2e0000 -- 100 % completeroot@fl-imx6ull:~# nandwrite -p /dev/mtd3 /run/media/sda1/target/imx6ull-S-gpmi-800x480c7.dtbWriting data to block 0 at offset 0x0
- _8 i, |2 U0 \/ X# m3 N  a

更新logo:

$ t4 B, r3 d% n7 C- D) [

3 J9 d" Y4 B6 jroot@fl-imx6ull:~# flash_erase /dev/mtd1 0 0Erasing 128 Kibyte @ 1e0000 -- 100 % completeroot@fl-imx6ull:~# nandwrite -p /dev/mtd1 /run/media/sda1/target/logo.bmpWriting data to block 0 at offset 0x0Writing data to block 1 at offset 0x20000Writing data to block 2 at offset 0x400001 V0 G. M: [3 [# \/ H& C
原文链接:https://www.forlinx.com/article_view_605.html3 b4 X5 s( E. w+ z! E

' v3 v" R/ U% F% I2 k+ y) \" |

该用户从未签到

2#
发表于 2020-12-21 18:00 | 只看该作者
iMX6ULL基础操作-系统烧写指南,谢谢你的分享米豆子。

点评

嘿嘿 互相学习  详情 回复 发表于 2020-12-22 11:01

该用户从未签到

3#
 楼主| 发表于 2020-12-22 11:01 | 只看该作者
rural 发表于 2020-12-21 18:00& m! R: p2 A6 ^6 p) q
iMX6ULL基础操作-系统烧写指南,谢谢你的分享米豆子。
; @. u! [# Y; e; t* U8 S5 I2 @
嘿嘿 互相学习
+ o( W* {& J: x+ g( h
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-22 11:20 , Processed in 0.078125 second(s), 27 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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