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.

[参考译文] F28M36P63C2:DATA_SECTION 用法

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/624443/f28m36p63c2-data_section-usage

器件型号:F28M36P63C2

我正在尝试向已知的内存位置写入一个版本、但似乎无法使其正常工作。

看起来它应该正常工作、因为我没有遇到编译器投诉。

下面是我拥有的内容:

####################################

代码:

#define pragma (x)_Pragma (#x)
#ifdef __cplusplus
#define GEPRAGMA (FWVersion、"fwverisonfile") pragma (DATA_SECTION ("fwverisonfile"))
其他
#define GEPRAGMA (FWVersion、fwverisonfile) pragma (DATA_SECTION (FWVersion、fwverisonfile))
#endif
CONST UINT16 FWVersion = 0x2436;  

链接器命令:

存储器

FWVERSITION (RWX):origin = 0x002E0060,length = 0x0010

部分

 fwverisonfile :> FWVERSION

######################################

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    它看起来变量正在得到优化。 我将其写入另一个变量、它现在起作用。
    如何关闭此优化? 我找不到设置。 谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    瑞吉斯

    您可以将变量设为"volatile"、以防止对其进行优化。 您可以更改优化设置,转到“项目属性”->“生成”->“C2000/ARM 编译器”->“优化”

    此致
    Chris