本帖最后由 jundao721 于 2022-3-17 13:08 编辑
隔了这么长时间,除了疫情闷在家里几天,也是花了一段时间来填裸机的坑。首先来说上一个问题,也是困扰了我很久。就是IAR+Jlink不能debug的原因,被我猜中了,是版本的问题,IAR最新版对SDK不太友好。重要的问题说三遍。
第二个问题聊一聊如何产生img镜像文件。这也是上一篇文章的遗留问题。在官方文档中找到这么一段话:
1. Build SDK2.0 application 2.Copy built binary (.bin file) to imgutil/<board> folder and rename tosdk20-app.bin 3.In imgutil/<board> folder, run mkimage.sh in mingw32 shell to getbootable image file sdk20-app.img a. If the image is built with ram link file, use "mkimage.shram" to make the bootable image. b. If the image is built with flash link file, use "mkimage.shflash" to make the bootable XIP image. c. If the image is built with ram link file and want to boot fromMicroSD card, use "mkimage.sh sd" to make the bootable image. 原来以为是直接运行sh文件,读来读去发现是需要在cmd命令窗口执行的,不知道是文档没找全的原因,还是官方表达比较含蓄,我等小白还是得靠悟性。
这样根据官方说明,就可以产生所需要的镜像文件。
前两个问题是上次遗留的问题,已经打通了,遇到了第三个问题,无法烧写SD卡。
按照官方的说明进行烧写,mfgtools烧写mfgtools-sdk20-mx6ul-evk-sdcard.vbs,运行到u-booting基本就不运行了,试了很多次,包括更换qspi.vbs,也是这样的。执行mfgtool2-erase-sdk20-mx6ul-evk-qspi-nor-n25q256a.vbs文件是一样的,通过终端可以看到报错。如下图1所示。
查了很多资料,试了很多方法,大概分几类:
1)NXPcommunity 给出的答案是更新patch和软件,如图2所示:
大概意思就是说,官方对于mfgtools不再提供维护,现在都是用uuu进行烧写。mfgtools的patch和uuu都进行了下载和更新,结果还是不行。
2)社区技术人员说烧写mfgtool2_yocto_mx_evk_sdcard_sd1.vbs文件,是可以解决问题的,尝试失败。
3)使用uuu烧写,提示找不到USB设备,failed。
4)https://community.nxp.com/t5/i-MX-Processors/mfgtool-can-t-work/m-p/811395
这篇文档说是因为进程没有关闭,找到进程,关闭了所有能关闭的进程,继续各种工具版本烧写,依然提示错误。
现在已经过去快两周了,都不知道怎么解决好。如果直接跳到Linux的世界里,裸机世界的遗留问题是放不下的。
在调试中我试了这个文件mfgtool2-yocto-mx-evk-sdcard-sd2.vbs,竟然是能烧写的,烧写了得有10分钟,最后弹出个盘符,mfgtools提示USB设备不是HID,而是Storage,这时又有很多问题悬浮起来。烧写的闪烁LED文件没有执行,不过至少有其他现象了。中断提示
imx6ul7d login:
Freescale i.MX Release Distro 4.1.15-2.0.0imx6ul7d /dev/ttymxc0 想来是烧写的镜像文件不对,重新检查file中的sdk20-app.img文件,是存在的。这会已经晚上了,再试试,如果不行就明天再说。 按照流程执行mfgtool2-sdk20-mx6ul-evk-sdcard.vbs,mfgtools运行良好。将板卡调成SD卡启动模式,完美执行。又试了一下其他的镜像,也没问题。想来这个坑不费点劲不好填。 感觉打通了游戏重要的一关,裸机调试基本暂时就这样,心里也没啥大的牵挂了,接下来的游戏将进入Linux的世界,守关的可能是更大的boss。主要是总编开始催稿了。 运行现象如图3所示:
|