器件型号: TMS320F280039C-Q1
大家好!
在生成十六进制文件时、我想用 0xFF 填充段之间未使用的地址、以便所有段都连接到一个连续的块。 但是、在使用“图像“和“填充“参数后、我收到此错误。 如何解决此问题?
此致、
Jenney
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.
器件型号: TMS320F280039C-Q1
大家好!
在生成十六进制文件时、我想用 0xFF 填充段之间未使用的地址、以便所有段都连接到一个连续的块。 但是、在使用“图像“和“填充“参数后、我收到此错误。 如何解决此问题?
此致、
Jenney
尊敬的 Jenney:
根据您的电子邮件、我看到您已经在使用--image 参数、但您得到的是--image requires ROM 指令错误。 您能参考中的示例 ROM 指令吗 17.4. ROMS 指令 — TI Arm Clang 编译器工具用户指南 (请参阅第 17.4.2 节)、并将其添加到您的参数中、然后试用? 这将解决该错误。 您需要修改 ROMS 指令以覆盖必要的存储器范围、其中包括所有段加载地址和引导加载程序表地址。
谢谢。此致、
IRA
尊敬的 Jenney:
您需要创建一个单独的十六进制实用程序命令文件。 请按照以下步骤操作。
1.创建一个新文件 app_hex.cmd
2.在其中包含 ROMS 指令。
假设代码占用一个连续的闪存区域、并希望用 0xFF 填充未使用的区域、则 app_hex.cmd 文件将像这样。 (从 https://software-dl.ti.com/codegen/docs/tiarmclang/compiler_tools_user_guide/compiler_manual/hex_utility_description/the-roms-directive-stdz0799222.html#stdz0799222 获取实际示例)
-o app_hex.hex(十六进制文件的名称)
--图像
--- memwidth 16
ROM
{
app_flash:origin = 0x000004000、len = 0x2000、romwidth =8、fill = 0xFF、files={rom4000.b0、 rom4000.b1} //根据应用程序的存储器地址更改此值
}
3.保存此 app_hex.cmd 文件。
4.使用 app_hex.cmd 文件运行 hex2000 工具。
5.导航至工具目录(可能是 C:\ti\ccs_version\ccs\tools\compiler\ti-cgt-c2000_22.6.3.lts\bin) 并运行 hex2000 app_hex.cmd。
6.应在 app_hex.hex 处生成正确的十六进制文件(将其更改为十六进制文件的名称)
谢谢。此致、
IRA