平台是:LPC2214 编译系统:MetrowerksCodeWarrior 调试环境:ADS mem_c.scf: IRAM 0x40000000 { Startup.o (MyStacks) }
STACKS_BOTTOM +0 UNINIT { Startup.o (StackBottom) }
STACKS 0x40000c00 UNINIT { Startup.o (Stacks) }
ERAM 0x40000d00 { * (+RW,+ZI) }
HEAP +0 UNINIT { Startup.o (Heap) }
HEAP_BOTTOM 0x40003f00 UNINIT { Startup.o (HeapTop) }
所有文件中static 变量通过 ADS来看分配地址都分配到了 40005xxx中,而datasheet中说这一段为保留地址,而没有static开头的,都正常地分配到了我定义的内存中40000d00~40003f00 中。
我的40000d00~40003f00已经用满,但是编译系统就是不报错,后来用adx 一查,发现内存空间是这样分配,我觉得不能理解,有没有人帮我解释一下。
|