用的是at91sam9系列,128M内存。
在程序跳转到main时,IAR会对内存进行处理,如果内存分配超过64M,程序就死在这儿。
使用IAR的icf文件定义block,section可以解决。
例如
char A[0x6400000] @ "MYSECTION1";
icf:
define region DDRAM_region2= mem:[from 0x20000000+0x00200000 to 0x20000000+0x08000000];
define block MYBLOCK2 with alignment = 8, size = 0x06400000 {section MYSECTION1 };
place in DDRAM_region2{block MYBLOCK2};