在我的分散文件中,我有一个名为TCM_COPY的内存区域,
在我的C文件中,我试图将region_name作为extern,
extern unsigned int Image $$ TCM_COPY $$ Base。
但是当我编译该C文件时,ARM编译器会生成错误;
L6218E:未定义的符号Image $$ TCM_COPY $$ Base。
我很奇怪为什么我无法从我的分散文件中导入该区域符号?
答案 0 :(得分:0)
您可以通过分散文件吗?
我尝试在http://www.keil.com/support/docs/3629.htm之后使用空缓冲区定义一个新的执行区:
在我的分散文件中:
LR_IROM_TEST 0x0802F000 0x00000100 {
BUFFER 0x0802F000 EMPTY 0x10 {}
}
在我的c档案中:
extern unsigned int Image$$BUFFER$$Base;
可以使用BUFFER访问您的区域(如果大小缓冲区=大小LR_IROM_TEST)。 它对我有用。
此链接可能会有所帮助: http://www.keil.com/support/man/docs/armlink/armlink_pge1362065956104.htm