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

CC2652RB: 产生的 .out 文件和 .hex 文件烧录结果不同

Part Number:CC2652RB

Hi Ti,

我在用 simplelink_cc13x2_26x2_sdk_4_30_00_54\examples\rtos\CC2652RB_LAUNCHXL\drivers\spimaster\tirtos\ccs 例程时发现一个奇怪的现象。

当我烧写 .out 文件后,即使板子重新断电,程序还能正常运行。

但当我烧写 .hex 文件后,程序当时是可以正常运行的,断电后却运行不起来了(通过检查,发现是使能了 backdoor 而代码的起始地址又不正确导致)

我的操作步骤如下:

首先我在 CCS 中导入了 spimaster 例程,然后使能了 .hex 工具,如下:

然后右击 rebuild 工程,这样就产生了项目的 .out 和 .hex 文件,如下:

再然后通过 smartRF flash programmer2 分别烧写以上两个固件:

烧写完固件后,读取 CCFG 区域的内容如下(左图为 .out 文件,右图为 .hex 文件):

      

通过技术手册的描述可知,.hex 文件使能了backdoor却没有给出有效的起始地址,导致程序上电后不能正常工作。

但是我通过 .syscfg 文件看到 backdoor 并没有使能:

以上的结果让我很是奇怪,不知道是由什么原因引起的,以及要怎么解决这个问题呢?

谢谢!

Cherry Zhou:

您好我们已收到您的问题并升级到英文论坛,如有答复将尽快回复您。谢谢!

,

junde deng:

我发现关闭上面说的 ”Arm Hex Utility",然后在如下界面通过命令生成 .hex 文件就一切正常:

(命令为:${CG_TOOL_HEX} -order MS –memwidth=8 –romwidth=8 –intel -o ${ProjName}_${ConfigName}.hex ${ProjName}.out)

,

YiKai Chen:

不知道為什麼ti spimaster這個例程沒有在hex utility裡面使用–intel,應該是沒有使用intel格式造成的問題

,

Cherry Zhou:

您好,您可以参考以上回复和该回复:

我们尝试了您的以上操作,发现这是默认 Arm Hex Utility option的预期操作和行为。

请您输入“Output Format Options”,然后选择Intel hex作为输出格式,默认使用的是 Tektronix(在该指南中有指出:ARM Assembly Language Tools User's Guide),但是这个没办法对SimpleLink 器件进行充分编程, 因此您现在看到的默认的 CCFG 设置 (就像闪存编程器 2 擦除了器件存储器一样) ,该设置在使用 .out file或-INTEL option生成十六进制文件的时候会被修复、正如Post-build steps command所示。

希望以上回答对您有所帮助,如有其他问题请随时联系我们。

赞(0)
未经允许不得转载:TI中文支持网 » CC2652RB: 产生的 .out 文件和 .hex 文件烧录结果不同
分享到: 更多 (0)