最近在做LPC43XX系列的双核系统,暂时使用的是LPC4350的板子,使用的是IAR编译环境。
设置M0核代码放置在ram区,地址为0x10010000~0x10017fff, M4核代码放置在ram区,地址为0x10000000~0x1000ffff.
想在M4工程中加载M0核的bin文件,看了网上的资料,说是在options->Linker->Extra Options中添加symbols
但是查看M4 map中m0Image的地址还是在M4的区间里面,为0x10000114。
如何才能将m0Image的地址放在M0的区间里呢,如m0Image的地址为0x10010000.
问题解决,方法如下:
在.icf文件里面,加上
define symbol __ICFEDIT_region_M0RAM_start__ = 0x10010000;
define symbol __ICFEDIT_region_M0RAM_end__ = 0x10017fff;
define region M0RAM_region = mem:[from __ICFEDIT_region_M0RAM_start__ to __ICFEDIT_region_M0RAM_end__];
place in M0RAM_region {section .M0BIN};
再操作工程的options->Linker->Extra Options中勾选Use command line options, 在Command line options中添加如下内容:
--image_input=$PROJ_DIR$\..\M0\Debug\Exe\LPC4357140506.bin,m0Image,.M0BIN,4
--keep m0Image
记得一定要在M0BIN前面加一个.,不然不能成