完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本文以飞凌嵌入式OKMX6ULL-S开发板为基础讲解,本文分为三个部分,主要讲解了iMX6ULL SD卡烧写系统及OTG烧写系统的以及单步更新内核的步骤。通过本文您可以快速实现飞凌iMX6ULL开发板系统烧写。
|
|
相关推荐
4个回答
|
|
SD卡烧写系统
以nand- sdburn为例,烧写NAND进行操作说明,飞凌iMX6ULL拨码开关设置参考如下。 设置拨码开关:
注意:上表中“1”代表ON,“0”代表OFF,“X”代表无关。 |
||||||||
|
||||||||
制作SD卡
将文件nand-burnsd拷贝到Ubuntu 系统的任一目录,假设为/home/neo/work。 用户资料/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盘没有被虚拟机识别,可以使用如下箭头指向图标将优盘连接到虚拟机)。 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_46f4b091d61d2326aa2f5abdebbc27f7&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 步骤3:待虚拟机识别到SD卡后弹出目录再进行下边烧写操作。进入/home/neo/work/nand-burnsd目录,执行脚本: neo@[color=inherit !important]ubuntu:~/work/nand-burnsd$ sudo 。/6ullsdburn.sh 执行上述命令后,终端会列出电脑的硬盘或U盘,对应选择自己的SD 卡,回车。 注意:判定自己的U盘是 sda/sdb/sdc 可以根据容量进行判断,比如自己的优盘容量为4G,则其size 为3872256 KB≈ 4G,建议用户执行此操作时不要同时插入多个优盘,以免混淆。 这里以我们的操作为例: 选择 1 ,回车 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_2e49dbb3a216e6260df3e90d6711bfd1&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 选择y,回车,等待至制卡完成。 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_635f227f42c69ccdf07a81dcd4fcebec&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 若打印信息中没有下图红框中标识的信息,则SD卡挂载失败,则需要使用Ubuntu重新卸载并挂载。 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_4fdd629a02d0fb8fe2039d33d97f7a8a&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 卡制作完成后可以看到boot 分区包含sdrun和target两个目录。sdrun 文件夹内容用于引导系统烧写,无需修改;target目录内容会烧写到flash[color=inherit !important]芯片。如果需要替换镜像文件,只需将target目录中的对应文件替换掉,并保持同样的命名,之后再重新进行系统烧写。 |
|
|
|
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电源供电如图,开关拨到供电口端: 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_0cb51170d739a88d7790ba6e84fb8035&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 ③、拨码开关设置为 1、2为ON,其他状态任意。如图: 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_cd61b1f00955c2a5eaaa84c163b5844f&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 ④、双击“ mx6ull-256mnand-256mddr-cmd.vbs ”(已写好脚本,直接烧写),如下图: 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_e711f3ec3a9ab54299b5f144cd671aaf&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 ⑤、插入USB OTG,如下图: 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_107558b2368d2519e58953ae3b5dd1f7&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 自动识别为HID,如图: 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_3384fdc9ba150a5f6eccb1667d890929&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 ⑥、点击start,开始烧写系统,中间弹出格式化对话框,点击“取消”格式化选项,或者不管它,直到烧写完成。如图: 《img i onclic clas file=“https://www.forlinx.com/file.php?f=202012/f_7be733742f2c3434f2eb3480b931cc5a&t=png&o=&s=&v=1608276330” onmouseove lazyloadthum borde al》 ⑦、系统烧写完成之后,出现“Done”,之后点击“stop”,停止。再点击“Exit”,关闭烧写烧写工具。断电,将拨码开关拨到4、5、8均为ON,1、2、3、6、7均为OFF,重新上电iMX6ULL开发板,NAND启动。 |
|
|
|
单步更新内核1、 eMMC单步更新内核
系统启动后,将待替换设备树放于u盘中,插入到开发板上,在超级终端输入命令: 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 重启后,到uboot阶段选择对应dtb即可。 2、 Nand单步更新内核 更新dtb以及内核,logo,可以使用nandwrite命令,该命令也已经打包在文件系统中。使用时,要将待烧写的dtb、logo、 zImage文件复制到文件系统的某个目录下(本文示例为/root),然后擦除掉对应分区中的旧固件,再分别使用nandwrite命令将新的固件写到对应的分区中。参考命令如下所示: root@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… 更新内核: 更新dtb: 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 更新logo: root@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 0x40000 |
|
|
|
只有小组成员才能发言,加入小组>>
798 浏览 0 评论
1155 浏览 1 评论
2531 浏览 5 评论
2863 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2713 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1086浏览 3评论
195浏览 2评论
461浏览 2评论
374浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
455浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 10:01 , Processed in 1.197817 second(s), Total 85, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号