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.

[参考译文] TMS320F28388D:对于全局变量的初始化值,闪存中存储的地址是什么?#39?

Guru**** 2603695 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1105483/tms320f28388d-for-initialized-value-of-global-variable-what-s-the-address-stored-in-flash

器件型号:TMS320F28388D

您好,

打扰一下、我有疑问

有一个全局变量,对于其初始化值 ,闪存中存储的地址是什么?

以及如何将初始值分配给闪存中的自定义地址

谢谢

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

    您好!

    我不确定我的问题是否正确。 您是否正在寻找存储初始值的地址? 这是.cinit 段的一部分。 该段被分配给链接器 cmd 文件中指定的存储器。

    .cinit       :> FLASH_BANK0_SEC1, ALIGN (8)

    此致、

    Veena

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

    谢谢、

    我 的目的 是  在十六进制文件中查找变量的初始值并对其进行修改

    因此、我想知道      初始值和 闪存地址之间的一对一对应关系。

    例如、 初始值为0x1234的变量"A"、并将0x1234存储在闪存地址0x09 0000中

    初始值为0x5678的变量"b"、并将0x5678存储 在闪存地址0x0A 0000中

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

    您好、我将把您的查询转发给编译器团队

    此致、

    Veena

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

    假设我们所讨论的是一个情况,即普通全局变量在任何函数之外被初始化,其值为...

    int global_variable = 0x1234;

    [~ userid="505450" URL"/support/microcontrollers/C2000-microcontrollers-group/CC2000/f/C2000-microcontrollers-forum/1105483/tms320f28388d-for-initialized-value-value-of-global-variable -the-address-stored-in-in-flash/4017#4096017"]我想知道      一 个对应的地址和一个地址之间的初始地址关系[引用一个对应的初始地址]

    它不像这样工作。  值(0x1234)的位置不是相对于定点的、也不是用符号或任何类似的东西进行标记的。  

    请在 C28x 编译器手册中搜索 标题为 "系统初始化"的子章节。  重点介绍说明自动初始化如何在较旧的 COFF ABI 和较新的 EABI 中工作的部件。  初始化值汇总在由启动代码处理的表中。  任何一个初始化值的地址都不会被考虑在内。

    谢谢、此致、

    乔治