工具/软件:
当使用2837D 的 CPU2时、使用仿真器将生成的 OUT 文件下载到闪存中、在查看存储器时、存储器中有0xFFFF、但当 Vscode 打开相应的 bin 文件时、相应的位置不是0xFFFF。(如下图所示)、bin 文件中缺少4 0xFFFF

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.
工具/软件:
当使用2837D 的 CPU2时、使用仿真器将生成的 OUT 文件下载到闪存中、在查看存储器时、存储器中有0xFFFF、但当 Vscode 打开相应的 bin 文件时、相应的位置不是0xFFFF。(如下图所示)、bin 文件中缺少4 0xFFFF

由...创建的二进制文件
使用 CCS 启用由"Enable C2000 Hex Utility"生成的二进制文件。设置如下:---memwidth=16 --order=MS --romwidth=16 --diag_swrap=off --binary。
...有一个问题。 各段之间的存储器间的任何间隙都将被忽略。
请使用 此论坛帖子中描述的权变措施。 除了其他详细信息、此权变措施需要在 CCS 工程中添加一个十六进制实用程序命令文件。 有关如何执行此操作的详细信息、请参阅 CCS 中十六进制实用程序一文的最后一部分。
谢谢。此致、
-乔治
我更改了生成 BIN 文件的方式。
生成后、我使用: "${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin "${BuildArtifactFileName}""${BuildArtifactFileBaseName}.bin""${CG_TOOL_ROOT}/bin/ofd2000 "${CG_TOOL_ROOT}/bin/hex2000 "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin
CPU1和 CPU2使用相同的方法、CPU1的 bin 文件没有问题(bin 文件与 memory 视图中的完全相同)
但是、CPU2存在问题:例如、下载 JATG 后、在内存视图中查看的数据为 FFFF FFFF FFFF、但 bin 文件为0000 0000 0000

我向您推荐的解决方法不使用 tiobj2bin 。 因为 tiobj2bin 有问题。
第一、它不支持 C2000 EABI 文件。 我假设您使用 EABI 来构建、因此我不知道如何使其正常运行。
二、间隙始终用0填充。
如果您使用我建议的解决方法、默认情况下它会用0填充间隙。 但您可以通过添加选项来更改该默认值 -- fill=0xFFFF 连接到 hex2000 命令。
谢谢。此致、
-乔治