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.

[参考译文] TMS320F28379D:.data 段根据映射文件未初始化

Guru**** 2561910 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1255626/tms320f28379d-data-section-is-uninitialized-according-to-map-file

器件型号:TMS320F28379D

您好!

我使用的是编译器版本 TI v22.6.0。 LTS、我现在使用输出格式作为 eabi (ELF)、根据 TMS320C28x 汇编语言工具 v22.6.0.LTS 文档.data 段应进行初始化。 但当我检查映射文件时、会显示:

.data   1  0000af18  00000089   未初始化

问题是、在我创建 hex 文件时、未初始化的数据不属于该文件的一部分、因此我无法创建校准。

谢谢!

杰伊

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

    您是为较新的 EABI 而不是较旧的 COFF ABI 构建的吗?  如果执行了该操作、编译命令和链接命令、请使用选项 --abi=eabi

    谢谢。此致、

    -乔治

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

    但是根据文档、我使用 EABI 或 COFF 根本无关紧要、只要我提到.sect " section name "、它应该创建一个初始化段? 您能否给我指出文档、该文档可以指出初始化数据段时应遵循的所有规则。 我还使用用户定义的部分、以防有所帮助。

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

    抱歉。 我不知何故忽略了这从你的第一个岗位...

    [quote userid="551477" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1255626/tms320f28379d-data-section-is-uninitialized-according-to-map-file 我现在使用输出格式作为 eabi (ELF)

    假设您将 ROM 模型与 -- rom_model 。  在这种情况下、 .数据 段从汇编器中作为已初始化的段出来、但由链接器更改为未初始化的段。  链接器创建 .cinit 部分、该部分基于(除其他外)以下内容: .数据 。  为 .cinit 段已初始化。 来自 RTS 库的启动代码将处理 .cinit 部分)以(除其他外)创建 .数据 段、即初始化与配置文件关联的 .数据 。  有关详细文档、请搜索《 TMS320C28x 嵌入式应用二进制接口应用报告》 以查看标题为" 变量初始化"的子章节。

    谢谢。此致、

    -乔治