|
楼主 |
发表于 2009-6-6 18:27:52
|
显示全部楼层
具体情况是这样的:
716最大程序空间地址是:7FFFH,我的程序现在用了了:6FFFH,下面是716的LKR文件,似乎是我编译的时候用了前者,定义了_DEBUG,6FFF之后的空间是受保护的(有什么?),在编译器里怎么设置才能生成ELSE的选项啊?
// File: 16f716_g.lkr
// Generic linker script for the PIC16F716 processor
#IFDEF _DEBUG
LIBPATH .
CODEPAGE NAME=page START=0x0 END=0x6FF
CODEPAGE NAME=debug START=0x700 END=0x7FF PROTECTED
CODEPAGE NAME=.idlocs START=0x2000 END=0x2003 PROTECTED
CODEPAGE NAME=.config START=0x2007 END=0x2007 PROTECTED
DATABANK NAME=sfr0 START=0x0 END=0x1F PROTECTED
DATABANK NAME=sfr1 START=0x80 END=0x9F PROTECTED
DATABANK NAME=gpr0 START=0x20 END=0x64
DATABANK NAME=dbgspr START=0x65 END=0x6F PROTECTED
DATABANK NAME=gpr1 START=0xA0 END=0xBF
SHAREBANK NAME=gprnobnkdbg START=0x70 END=0x70 PROTECTED
SHAREBANK NAME=gprnobnkdbg START=0xF0 END=0xF0 PROTECTED
SHAREBANK NAME=gprnobnk START=0x71 END=0x7F
SHAREBANK NAME=gprnobnk START=0xF1 END=0xFF PROTECTED
SECTION NAME=PROG ROM=page // ROM code space
SECTION NAME=IDLOCS ROM=.idlocs // ID locations
#ELSE
LIBPATH .
CODEPAGE NAME=page START=0x0 END=0x7FF
CODEPAGE NAME=.idlocs START=0x2000 END=0x2003 PROTECTED
CODEPAGE NAME=.config START=0x2007 END=0x2007 PROTECTED
DATABANK NAME=sfr0 START=0x0 END=0x1F PROTECTED
DATABANK NAME=sfr1 START=0x80 END=0x9F PROTECTED
DATABANK NAME=gpr0 START=0x20 END=0x6F
DATABANK NAME=gpr1 START=0xA0 END=0xBF
SHAREBANK NAME=gprnobnk START=0x70 END=0x7F
SHAREBANK NAME=gprnobnk START=0xF0 END=0xFF PROTECTED
SECTION NAME=PROG ROM=page // ROM code space
SECTION NAME=IDLOCS ROM=.idlocs // ID locations
#FI |
|