TI中文支持网
TI专业的中文技术问题搜集分享网站

AWR6843AOP: SBL program failed to start app

Part Number:AWR6843AOPOther Parts Discussed in Thread:UNIFLASH

The sbl and app program can be run directly,When they burn chips separately。

I want to launch the app program through SBL but it has failed.

Is there any way to troubleshoot problems or known causes?

Nancy Wang:

能否详细描述一下执行步骤?

,

shi guilin:

你好:

我当前有两个可执行的bin文件,分别是sbl.bin和app.bin.

我单独用uniflash烧录sbl.bin时程序可以启动执行。

我单独用uniflash烧录app.bin时程序也可以启动执行。

当我用sbl.bin加载app.bin到flash启动时,加载成功但是程序没有被引导启动。

我是用ccsdebug风别调试的sbl.bin和app.bin。

但是没办法用debug调试sbl.bin是加载app.bin.

因为调试的时候程序被修改重启会出错。

我想知道是否有什么异常点,或者有什么办法定位问题。

以上有什么不明白的再继续沟通。谢谢

石桂林

,

Chris Meng:

你好,

请问你是否使用的是mmwave sdk3.5、3.6里的sbl?这个sbl是可以正常启动app的,例如mmw demo。

shi guilin 说:但是没办法用debug调试sbl.bin是加载app.bin.

可以在sbl里加上一个变量判断循环,先让sbl运行在变量判断循环的地方一直循环,然后连上ccs,load sb的symbol,然后修改变量,让sbl跳出循环,然后你就可以单步sbl了。

Thanks,

Chris

,

shi guilin:

你好:

我使用的是mmwave_sdk_03_01_01_02版本的sdk,

mmwave_sdk_03_06_00_00-LTS这个版本的可以正常启动吗?我后面用这个版本的sbl在尝试一下

,

shi guilin:

你好,

我还有一个问题

在调试sdk中的sbl的时候,需要用串口传输bin文件。

请问sdk中有传输的工具吗?怎么使用?

,

shi guilin:

你好,

我尝试使用mmwave_sdk_03_06_00_00-LTS这个版本启动mmw demo.

还是会失败。

以下是我的错误日志

==========

Debug: Loading application metaImage from Flash address: c0040000Error: Meta header absent!!!

Error: Could not download the metaimage to RAM. Trying to boot the backup factory default image.

Debug: Loading backup factory default image from Flash address: c0180000Error: Meta header absent!!!

Error: Could not download the backup factory default image metaimage to RAM. Resetting the board to retry

==========

我是使用uniflash同时写入sbl和mmw demo的bin文件到flash中。下面是我选择的方式,请帮忙看一下是否有误

,

Chris Meng:

shi guilin 说:在调试sdk中的sbl的时候,需要用串口传输bin文件。

通用的串口工具就可以,例如tera term。

shi guilin 说:我是使用uniflash同时写入sbl和mmw demo的bin文件到flash中。下面是我选择的方式,请帮忙看一下是否有误

在SBL里跳转APP的地址并不是uniflahs里的image2的地址。解决方法1.使用sbl更新app,2修改sbl的app跳转地址,重新编译sbl

sbl.h

#define SBL_METAIMAGE_OFFSET                (256U * 1024U)

https://www.ti.com/lit/an/swra627/swra627.pdf

Thanks,

Chris

,

shi guilin:

你好,

我的问题已经解决。

原因是在旧版sdk(mmwave_sdk_03_01_01_02)中,6843的sbl启动程序有bug。在新版的sdk中已经修复。

关键代码是:

            /* ungate clock */
            SOC_ungateClock(gSblMCB.socHandle, SOC_MODULE_BSS, &errCode);

            /* Enable the regions */
            SBL_mpuConfigBSS(true);
在image解析时,解析到BSS的内容会使能BSS,但是旧版sdk中没有调用SOC_ungateClock.使能失败,后面进行程序复制时导致程序崩溃。

==========
分享一下我在处理这个任务时的一些难以理解的操作。

我初次调试代码时,芯片烧录的时demo文件,然后用ccs调试sbl程序(有问题的)时,程序能够正常启动加载并解析image文件。
但是当我直接将sbl.bin文件烧录到芯片中,程序不能启动。

在我解决问题后发现。demo程序已经将bss启动,所以不会出现问题

赞(0)
未经允许不得转载:TI中文支持网 » AWR6843AOP: SBL program failed to start app
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1