以前看到过一个,给你参考参考(main.c的放在0x80000000,其它放在0x00000000):
ROM_LOAD 0x00000000 0x00020000
{
ROM_EXEC 0x00000000 0x00020000
{
Startup.o (vectors, +First)
* (+RO)
}
}
ROM_LOAD1 0x80000000 0x00020000
{
ROM_EXEC1 0x80000000 0x00020000
{
main.o (+RO)
}
}
RAM_LOAD1 0x40000000
{
IRAM 0x40000000
{
Startup.o (MyStacks)
}
STACKS_BOTTOM +0 UNINIT
{
Startup.o (StackBottom)
}
STACKS 0x40004000 UNINIT
{
Startup.o (Stacks)
}
ERAM 0x81000000
{
* (+RW,+ZI)
}
HEAP +0 UNINIT
{
Startup.o (Heap)
}
HEAP_BOTTOM 0x81080000 UNINIT
{
Startup.o (HeapTop)
}
}
但建议做成2个工程,一个是简单的BootLoader,另一做应用程序,升级时把整个应用程序都升级。
|