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