呃,实例如下
编译器是IAR EWARM 4.30(这个无法换)
LPC2365
原有32K SRAM
现在想把USB SRAM 8K和 Ethernet SRAM 16K都当普通SRAM使用
下面是地址
-DRAMSTART=40000040
-DRAMEND=40007FFF
-DUSBRAMSTART=7FD00000
-DUSBRAMEND=7FD01FFF
-DETHERNETRAMSTART=7FE00000
-DETHERNETRAMEND=7FE03FFF
想问的是,该如何操作,才能在应用层上把这58K当作一块SRAM使用(编译器能自动分配空间)
我现在XCL中
-P(DATA)DATA_I=RAMSTART-RAMEND,USBRAMSTART-USBRAMEND,ETHERNETRAMSTART-ETHERNETRAMEND
-P(DATA)DATA_Z=RAMSTART-RAMEND,USBRAMSTART-USBRAMEND,ETHERNETRAMSTART-ETHERNETRAMEND
-P(DATA)DATA_N=RAMSTART-RAMEND,USBRAMSTART-USBRAMEND,ETHERNETRAMSTART-ETHERNETRAMEND
无论是DATA_Z还是DATA_N,都仅能在某一块RAM中分配空间,无法同时使用两块区域
测试方法:申请N x 1K的全局数组,N > 32,编译无法通过 |