程序放在片外FLASH,想运行在RAM中,需要怎么做? ADS1.2
在网上看到可通过分散加载文件重定向:
ROM_EXEC 0x80000000 0x40000 { Startup.o (vectors, +First); * (+RO) //这是在片外FLASH正常运行时的代码 __main.o (+RO) //这是想在RAM中运行的代码 *(Region$$table) //这是想在RAM中运行的代码 *(ZISection$$table) //这是想在RAM中运行的代码 } IRAM 0x40000000 0x4000 { Startup.o (MyStacks) } STACKS_BOTTOM +0 UNINIT { Startup.o (StackBottom);栈长度限制值 } STACKS 0x40004000 UNINIT { Startup.o (Stacks);栈基地址 } ERAM 0x81000000 0x100000 { * (+RO,+RW,+ZI) //这是想在RAM中运行的代码 ; * (+RW,+ZI) //这是在片外FLASH正常运行时的代码 } HEAP +0 UNINIT { Startup.o (Heap);heap基地址 } HEAP_BOTTOM 0x81100000 UNINIT { Startup.o (HeapTop);heap长度限制值 }