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.
您好!
我认为这个问题一般是有效的,而不仅仅是对我来说。 如果我选择了错误的类别、请道歉。
问题如下:
我有一个文件包(.out 和.hex)、我还有源代码、但我不确定它是否与该.hex 相关。 那么、我采用了该代码并构建了它。 构建过程正常、并生成新的.out 和.hex。
将"旧".hex 与新的.hex 进行比较、内容与每字节的字节完全匹配、但如果我比较.out、字节代码不匹配。
因此、问题如下:
-使用 uniflash、加载.out 而不是.hex 有一些差异? 我希望加载.out 或.hex 的行为是相同的。
2 .out 是否可能不匹配? ( 十六进制的完美匹配)
-是否有教授.out 格式的规范? (如十六进制文件规范。)
-有了源代码、是否可以找到用于构建、链接等的正确工具链。 ?? 我认为我选择了合适的编译器、但问题可能出在 工具链的其他工具上
不幸的是、我无法在电路板上进行测试、因为我现在没有测试。
请帮助我了解这款计量器。
谢谢、
此致。
您好!
[引用 userid="498071" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1177964/tm4c1230c3pm-difference-out-and-hex ].out 而不是.hex 的加载有所不同? 我希望加载.out 或.hex 的行为是相同的。.它们非常不同。 最大的区别是*。out 文件具有调试器提供调试可见性所需的调试符号信息。 该信息不存在于.hex 文件中。 因此、.out 文件通常比.hex 文件大得多的原因。
有关详细信息、请参阅以下文章:
https://software-dl.ti.com/ccs/esd/documents/sdto_cgt_A-Brief-History-of-TI-Object-File-Formats.html
请参阅标题为"比较大小:目标文件、十六进制文件、系统存储器映像"的部分
谢谢
Ki
以及:"十六进制文件来自目标文件"
感谢您的分享...我一定会查看链接。 但我的问题是、如果我加载.out 或我加载.hex、我是否应该除了与电路板不同的行为之外? 我不是说要进行调试、而是使用 Uniflash 进行加载以进行大规模生产。
再次感谢
假设十六进制文件已正确生成、则为否
您好!
我做了另一个有趣的测试。 为了测试、我使用了实用程序"armhex"、并生成了.hex #1 、作为输入 .out #1。 使用 code composer studio、我编译了我的项目、生成.out #2和.hex #2。
最后、我比较了2个十六进制、内容是相同的。
因此、如果.out 不同、则生成的.hex 可能相同。 我认为2个不同的.out 会生成2个不同的.hex、但显然我错了
谢谢
需要记住的关键是.out 文件包含两个部分-目标的实际代码(加载在目标上)和符号调试信息(加载到调试器)。 符号调试信息在不同构建之间可能会有很大的变化、因为它具有主机时间戳信息、源文件的目录路径等内容 但这不会影响要加载到目标上的代码。 十六进制文件主要来自实际代码、而不是符号调试信息、因此十六进制文件不会受到影响。
这正是我想要听到的。 谢谢!!
此致。