工具/软件:TI C/C++编译器
您好!
我有一个自定义 cmd 文件、它定义了一些我想要校准的参数的加载和运行位置。 行为和设置与另一个线程非常相似、该线程目前已锁定
唯一的区别是我在28335上、而不是使用 CLA。
经过几个 trys 之后、我发现这些语句类似
#pragma DATA_SECTION (aDataName、"aDataSec")
int aDataName = 1234;
在自定义声明的 DATA_SECTION 中、不会被视为"初始化数据"、因此会出现警告和错误行为。
通过添加 const 关键字、我得以解决问题:
#pragma DATA_SECTION (aDataName、"aDataSec")
const int aDataName = 1234;
然后警告消失、数据被放置在正确的闪存位置。
但这个数据名 var 并不是真正的常量。 我将在运行位置对其进行调优、即 RAM。 我不会在代码中更改它、而是直接使用存储器写入来更改它、因此我宁愿不将它声明为 const。
编译器团队的任何人是否可以研究此问题? 为什么编译器不接受具有初始值声明的标准 C 语句? 这是编译器中的错误吗? 是否有参考文档?
我在论坛上看到了一些类似的帖子、但我认为其中任何一个都没有得到直接的答案。
谢谢。
此致
gzhang