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.

[参考译文] CCS/TMS320F28377S:需要了解十六进制输出文件

Guru**** 2460850 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/695436/ccs-tms320f28377s-need-to-understand-hex-output-files

器件型号:TMS320F28377S

工具/软件:Code Composer Studio

我正在使用多级降压加载器。  该过程的输入是由 CCS 6.2生成的.hex 文件。  我有两个项目。  每个项目都会生成两个文件。   

一个工程生成 project_name 1.hex 和 project name1.I01。  另一个生成 project_name 2.hex 和 project_name 2.I10。   检查并查看映射文件后、项目2看起来是正确的。

然而,项目1使我感到困惑。  十六进制和.I01文件具有相同数量的行(SREC)、它们在两个文件之间的记录类型、地址和长度、行的行之间匹配。  除了类型4记录(扩展线性地址)之外、记录中的数据不匹配。  在我看来、加载任一文件都会覆盖另一个文件的下载。  您能帮助我了解文件的使用方式吗?

此致、

Paul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    由于单地址单元格是16位字、Intel hex 和 Motorola S 记录采用8位、一个文件用于偶数字节、另一个文件用于奇数字节。
    在较大的工程上、CCS 可能会生成多对文件。 对于 S 记录、第一对 S19 (或十六进制?) 和 m01、第二对 M10-M11、M20-M21等。 也许您对英特尔也有相同的选择、我不是 m

    Edward
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Paul

    Edward 在您看到的内容方面是正确的。

    如果您想了解如何为引导加载程序生成十六进制文件、请查看 TRM: www.ti.com/.../spruhx5e

    此致
    Chris
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢你的帮助。  

    我在 Deflino 中计算了16位单元、但错过了十六进制这一事实

    输出可以包含多个文件。 CCS 为生成的十六进制输出

    我的项目位于两个文件中、 按内存段进行分区。   我有的两个文件

    (.hex 和.I10)在存储器的大小和地址分离段方面存在显著差异。

    现在、我了解了我所看到的东西、它们的工作效果要好得多。

    此致、

    Paul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    刚刚注意到、hex+I01是 cmd 中 PAGE 0的高字节+低字节文件。 I10+i11是第1页的高字节+低字节文件。 我之前曾想过、它们是在0x10000地址边界上的拆分、或者其他东西。

    Edward