主题中讨论的其他器件:TMS320F280049C
工具与软件:
大家好!
我们目前在为 TMS320F280049C 微控制器固件生成二进制映像时遇到问题。 当生成具有二进制选项的映像时、它似乎会输出一个不包含任何填充字节的二进制、这使得二进制本身基本上是无用的。 我已经找到了一些关于此问题的帖子、其中包含了一些可能的解决方案、但这些帖子都没有按预期运行、或者我无法像描述的那样运行。
一种建议的解决方案是使用 tiobj2bin、我在代码生成工具中将其作为.bat 文件找到。 当我尝试使用固件的 out 文件运行时、显示"c28x files built with --abi=eabi are not supported (不支持使用--abi=eabi 构建的 C28x 文件)"、因为我们使用的是 eabi 构建。 在我们的情况下、是否有其他方法可以使用它、或者 eabi 构建是否不可能实现?
另一个建议的解决方案是使用 hex2000和--binary 和--image 选项。 首先,它抱怨,因为它需要 ROMS 指令在-映像模式,所以我试图找出我必须在这里添加什么。 浏览过一些帖子后、我似乎必须在 hex2000命令末尾添加一个单独的文件、该文件随后包含一个 ROMS 部分、其中说明起始地址和映像的长度。 在其他帖子中找到一些建议后、我的文件看起来是这样的:
用于生成的命令为:
很遗憾、由于语法错误、它无法使用这种方法
由于我没有找到合适的文档来生成二进制映像、因此我想 在此试一下。 有人能告诉我 在构建有填充孔洞的过程中、生成一致的二进制映像的最简单方法吗? 即使是 hex2000的-阵列模式,它似乎是像它应该的工作方式。 可能使用另一个外部工具从 hex 文件生成二进制文件也更容易。 我知道、由于可能在开头填充、有必要为转换提供一个起始地址、但对我来说、定义固定长度(就像在 ROMS 指令中一样)没有什么意义。 当需要在 ROMS 文件中定义长度时、这会使编译变得更复杂、以将二进制大小减少到可能的最小长度。
此致
沃尔夫冈