3

我有一个似乎很简单的问题,我确信我之前已经解决了,但是我很难再次找到答案,所以希望有人可以为我指明正确的方向

我有一块内存区域,我想为我的代码中的特定变量“保留”。

我知道我可以通过编辑链接器脚本并从 rom 部分中删除我的数据块来做到这一点,以确保程序代码没有写入特定地址 - 而不是编辑脚本我记得在 c 代码中做了很长时间过去。我使用编译指示或类似的东西做了它,从记忆中它看起来像这样(代码不正确,但这就是我记得的模糊内容!)

"#pragma _address @0x00040000 char mydata[1024];"

这将在地址 0x00040000 处保留 1024 个字节的数据。

有谁知道上述代码的正确格式?

对于上下文 - 我正在使用基于闪存的微处理器编写嵌入式 C 应用程序。该区域是闪存,我想在那里存储闪存配置数据(由我的程序生成)。要使用闪存,我需要将我的数据对齐到正确的块中,所以我需要指定地址。我想做的是保留一块不会被我的程序代码填充的闪存区域,以便我可以用我的配置数据填充它。

谢谢你的帮助!

斯蒂沃

4

1 回答 1

2

#pragma指令具有实现定义的关键字,因此您的答案取决于您的编译器。建议查阅您的编译器手册。

于 2012-12-13T01:14:16.970 回答