1

谢谢参观。

编译我的 C 项目时,链接器会生成一个文件,我可以在其中定义我想要的 RAM 部分,如下所示:

-ra RAMCHECK=0x00028000/0x000296FF

-ra D_RAM=0x0002a000/0x0002D6FF

-ra IDLE_TSK=0x0002D700/0x0002DFFF

-ra NORMAL_TSK=0x0002E000/0x0002EFFF

-ra HIGH_TSK=0x0002F000/0x0002FFFF

我的问题如下:

如何将代码段和变量定义到 RAM 的特定位置?

4

1 回答 1

1

这就是它的完成方式gcc

int data[100] __attribute__((section ("D_RAM"))) = {0}; /* should be initialized */
void myfunc(void) __attribute__((section ("HIGH_TSK"))) { ... }

你的编译器(它的名字是什么?)可能有它自己的 C 扩展,工作方式相同。

于 2013-01-10T16:02:16.190 回答