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.

[参考译文] CCS/TMS570LS3137:可为 TI TMS570LS3137生成.bin 和.hex 文件的编译后命令

Guru**** 1997655 points
Other Parts Discussed in Thread: TMS570LS3137
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/777216/ccs-tms570ls3137-post-build-command-that-can-generate-both-bin-and-hex-file-for-ti-tms570ls3137

器件型号:TMS570LS3137

工具/软件:Code Composer Studio

我在 CCS 5.5 IDE 编译后使用以下命令

右键点击工程->显示编译设置->编译->步骤。 用于编译后处理步骤的框中的(一行中)

tiobj2bin 和 mkhex4bin 文件位于相应路径中。

 

要生成以下命令正在运行的.hex 文件:

"${CG_TOOL_HEX}"-order MS --memwidth=8 -romwidth=8 -Intel -o "${ProjName}.hex"${ProjName}.out"  

我正在使用 以下命令来生成不起作用的.bin, 它不会生成.bin 文件。

"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin ""${BuildArtiftFileName}""${BuildArtiftFileBaseName}.bin""${CG_TOOL_ROOT}/bin/armofd ""${CG_TOOL_ROOT}/bin/armhex ""${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin

单击“取消”后显示的错误如下所示:

'完成的构建目标:SIL2PSP_Extension_TMS570LS3137.out'
'
"""-order MS --memwidth=8 --romwidth=8 --intel -o ".hex"".out"'
"C:/ti/ccsv5 utils\tiobj2bin\tiobj2bin""SIL2PSP_Extension_TMS570LS3137.out""SIL2PSP_Extension_TMS570LS3137.bin""C:/ti/ccsv5/tools/compiler/arm_5.1.5 \bin\armofd""C:/ti/ccsv5/tools/compiler/arm_5.1.5 \bin\armhex""C:/ti/ccsv5 utils\tiobj2bin"

内部错误:C:/ti/ccsv5/tools/compiler/arm_5.1.5 \bin\armhex 遇到致命的内部故障

这是一个严重的问题。 请联系客户
支持此消息和输入文件的副本
并帮助我们继续使工具更可靠。

Gmake:***删除文件`SIL2PSP_Extension_TMS570LS3137.out'
Gmake:unlink:SIL2PSP_Extension_TMS570LS3137.out:权限被拒绝
终止批处理作业(是/否)?
Gmake:***[SIL2PSP_Extension_TMS570LS3137.OUT]错误130

****项目 SIL2PSP_Extension_TMS570LS3137的配置调试构建****

我想 在编译后处理框中一步包含整个命令。  

我们是否有通用的编译后处理命令、该命令可以一步为 TI TMS570LS3137生成.bin 和.hex 文件

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Chandre Shekar KALVACHERLA"]我想 在编译后框中一步包含整个命令。  [/报价]

    在 CCSv6之前、编译后处理步骤字段不允许指定多行命令。  要运行多个命令、您可以将所有命令都放在批处理文件/shell 脚本中并在命令字段中调用批处理文件、也可以使用适用的 Windows 命令处理符号在一行上运行多个命令(例如 cmd1和 cmd2)。  

    调用批处理文件时、经常出现的问题是批处理文件是否可以访问 CG_TOOL_ROOT 等 CCS 变量 您无法从批处理文件中直接访问 CCS 变量、但可以将其作为参数传递给批处理文件。

    例如、您可以在批处理文件中执行类似操作:

    @echo off
    set HexUtil=%1%
    set CCSOutFile=Project.out
    %HexUtil%-a %CCSOutFile%
    

    并调用编译后处理步骤、如下所示:  
    postbuildstep.bat "${CG_TOOL_ROOT}/bin/hex2000.exe  


    另请注意、CCS 5.5非常旧、不再受支持。 我们建议在可行的情况下尽快更新到 CCS 的最新版本。  

    希望这对您有所帮助!