在项目中,此分散文件:
APP 0x90309000 0x000B0000
{
APPCFG +0
{
* (APP_CFG)
}
APP0 +0
{
main.o* (APPENTRY)
}
APP1 +0
{
main.o* (+RO)
*.o* (+RO)
}
APP_RAM 0xF0380000 0x00060000
{
main.o (+RW,+ZI)
*.o (+RW,+ZI)
}
}
修改为:
APP 0x90309000 0x00030000
{
APPCFG +0
{
* (APP_CFG)
}
APP0 +0
{
main.o* (APPENTRY)
}
APP1 +0
{
main.o* (+RO)
*.o* (+RO)
}
APP_RAM 0xF0380000 0x00060000
{
main.o (+RW,+ZI)
*.o (+RW,+ZI)
}
}
在项目中,它改变了允许的程序和链接器的最大大小,给出了以下错误:
臂连杆:错误L6220:加载区域APP大小(197016字节)超过限制(196608字节)。
1条答案
按热度按时间nvbavucw1#
唯一的区别是内存中
APP
区域(第二个APP
参数)的大小从0x000B0000
(十进制720896
)降低到了0x00030000
(十进制196608
)。两个
APP
参数为:0x90309000
:内存中APP
区域的起始地址。0x00030000
:内存中APP
区域的大小。新的大小约束是您看到
armlink : error L6220: Load region APP size (197016 bytes) exceeds limit (196608 bytes).
您可以将大小限制提高到
0x00030198
(甚至可能是0x00030200
),以使其接受所需的197016
字节-但在查看your other question之后,我假设这不是一个选项,因为EEP
区域开始于APP
区域之后的0x30000
字节:所以: