This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
我正在使用 IWR6843AOP、并尝试通过 SBL 解决方案实现 FOTA。
虽然我成功地使用 SBL_transportDownloadFile ()函数的 QSPIFlash_singleWrite ()复制了固件二进制文件,但映像加载程序无法正常工作。
我是否需要进行任何具体修改?
此致、
Minwoo
你好。
加载图像时遇到什么具体问题/错误?
此致、
Santosh
感谢您的答复。
此过程不再继续、尽管未生成特定错误消息。 在 SBL_bufferMgmt 函数的 sbl_multicoreImageParser 阶段似乎存在问题。
以下是在将我的代码与参考代码进行比较时发现的差异。
在 sbl_multicoreImageParser()之前
在 sbl_multicoreImageParser()之后
此致、
Minwoo
+
其他异常包括 SBL_buffer_parser_RPRC_DWLD 函数仅运行一次、不会进一步重复。
当通过 SBL 参考代码的 UART (XMODEM)下载大小为0x9b984的文件时、该文件将变为0x9ba00。 我不确定额外的124字节来自哪里。
您好、Joh。
您对 SBL 示例进行了哪些具体的代码更改、以及在运行自定义示例时在终端上得到了什么输出? 我想确认您在尝试通过 Tera Term 上的 XMODEM 发送二进制文件时选择了1k 选项。
此致、
Santosh
我在 SBL 示例中添加了 SPI 通信代码、并仅将 UART 用于调试目的。 (我没有使用 XMODEM 1K 下载固件文件、
我刚刚使用了 XMODEM 1K 来比较固件文件的大小。)
在 SBL_imageFlasher 函数中、我通过 SBL_transportDownloadFile SPI 以63字节段将整个固件数据写入闪存。
SBL_imageLoader 函数未进行任何修改、但在将输入缓冲区加载到 RAM 时似乎存在问题(例如魔术字值不断变化)。
缓冲区大小修改详情如下。
此致、
Minwoo
你好。
让我来看看这个问题、并将在星期一结束时提供最新信息。
此致、
Santosh
你好。
对延迟响应深表歉意。 从查看您所做的更改、 我会确保第一张图像的参数与原始演示相同。 这些宏主要用于设置闪存、以便清除 SBL 将新映像写入 SFLASH 的麻烦。 在加载方面、我还要确保加载地址正确;您是通过中断倒计时来加载图像、还是只是尝试启动工厂映像? 原始代码假设备份映像位于 P4 (0x00180000U)中、主映像位于0x40000中、因此我只需确保您已更新刷写代码以应对 SFLASH 地址的更改。
此致、
Santosh