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.
我有一个.hex 文件、显然是 在 Windows XP 下使用 Code Composer 版本4.10.37构建的。 hex 文件位于项目的 build 文件夹中、"编译说明"中规定使用版本4.10.37。 我没有访问开发系统的权限、或者我可以验证.hex 是否确实是从相关源生成的。 我正在研究使用.hex 文件通过 Asset ScanWorks 加载闪存的可行性。 我检查了 hex 文件的格式、它 是 Intel Hex 格式的、这是 ScanWorks 所要求的。 我在互联网上找到一篇文章、说 Code Composer 使用 Intel MCS-786十六进制格式、但我收到的.hex 不是该格式。 有人知道 Code Composer 4.10.37生成的特定十六进制格式是什么吗?
我更仔细地研究了这一点、发现 hex 文件被加载到闪存中、然后在下电上电时将其传输到 Xilinx XC2V6000-4 (Virtex II) FPGA。 我已经对闪存/FPGA 进行编程、但尚未使用 Code Composer、不明白它的作用是什么。 我最初发布到这个线程是因为我认为 Code Composer 中包含了一个 VHDL 编译器、但之后我了解到 ISE Impact 用于将 VHDL 构建到十六进制文件中。 Impact 可以创建一个 MCS 文件,该文件采用 Intel Hex 格式,可用于 ScanWorks。 但是、我不明白 Code Composer 在对闪存/FPGA 进行编程时扮演什么角色、或者我是否可以在使用 ScanWorks 进行编程时绕过它。
我对你上一篇文章了解甚少。 但我想如果我解释 hex 文件如何适合在嵌入了 TI CPU 的系统上执行的典型构建、将会有所帮助。
客户通常会从软件开发套件(SDK)中的示例开始。 然后、他们可以根据自己的系统进行定制。 然后编译 C/C++代码、并将其与几个库链接在一起、最终形成一个二进制可执行文件。 CCS (您称其为 Code Composer)可以将此文件加载到系统中、并控制它的执行。 在许多此类情况下、永远不会使用十六进制文件。
但是、有时需要使用不属于 TI 编译器工具链的其他工具、从编译二进制可执行文件下游到在生产线上对闪存进行编程或类似的工具。 这些其他工具无法读取由 TI 编译器工具链创建的二进制可执行文件。 但他们可以读取 hex 文件。 因此、TI 工具链包括十六进制实用程序。 十六进制实用程序可以读取二进制可执行文件、并以大约8种不同的十六进制文件格式之一进行输出。 其中一种格式名为 Intel MCS-786。
您不会说您使用的是哪个 TI 器件。 目前、假设它上面有一个 Arm CPU。 要了解支持的十六进制文件格式的详细信息、 请 在 TI ARM 汇编工具手册中搜索标题为" 目标格式说明"的子章节。
谢谢。此致、
-George.