同事在编译程序时出现
Error - section .udata_main.o can not fit the section. Section .udata_main.o length=0x00000606
Errors : 1
询问高人得知该错误为RAM分配超过256B
解决方法为:
1、打开18f452.lkr
其关于RAM分配的为
ACCESSBANK NAME=accessram START=0x0 END=0x7F
DATABANK NAME=gpr0 START=0x80 END=0xFF
DATABANK NAME=gpr1 START=0x100 END=0x1FF
DATABANK NAME=gpr2 START=0x200 END=0x2FF
DATABANK NAME=gpr3 START=0x300 END=0x3FF
DATABANK NAME=gpr4 START=0x400 END=0x4FF
DATABANK NAME=gpr5 START=0x500 END=0x5FF
ACCESSBANK NAME=accesssfr START=0xF80 END=0xFFF PROTECTED
SECTION NAME=CONFIG ROM=config
STACK SIZE=0x100 RAM=gpr5
2、将其中gpr0范围改为START=0x80 END=0x4FF
如下:
DATABANK NAME=gpr0 START=0x80 END=0x4FF
其余屏蔽即可。gpr5为堆栈地址,不作休改。
3、重新编译,OK~~