我用CCS12.8打开了一个CCS3.3版本的程序,并将编译器版本修改为TI v6.4.12,BIOS版本修改为5.42.2.10,之后成功编译生成了.out文件,将.out文件烧录进FLASH后程序正常工作(程序中有关于LED屏幕显示的内容,我通过LED是否正常工作来判断程序是否烧录成功),之后断电重启LED不亮了,程序未被保存。想请问下是什么原因。
我在lib中添加了SFO_TI_Build_V6还是不行,断电后程序消失。
下面我粘贴一下MEMORY与SECTIONS的代码:
SECTIONS
{
/*** User Defined Sections ***/
codestart : > BEGIN_FLASH, PAGE = 0 /* Used by file CodeStartBranch.asm */
csm_rsvd : > CSM_RSVD, PAGE = 0 /* Used by file passwords.asm */
csmpasswds : > PASSWORDS, PAGE = 0 /* Used by file passwords.asm */
// ClaToCpuMsgRAM : > CLAMSGRAMLOW, PAGE = 1 /* Link to PF0 - CLA Message RAM */
// CpuToClaMsgRAM : > CLAMSGRAMHIGH, PAGE = 1 /* Link to PF0 - CLA Message RAM */
/* Section secureRamFuncs used by file SysCtrl.c. */
ramfuncs : LOAD = FLASH, PAGE = 0 /* Should be Flash */
RUN = DPSARAM, PAGE = 0 /* Must be CSM secured RAM */
LOAD_START(_RamFuncs_loadstart),
LOAD_END(_RamFuncs_loadend),
RUN_START(_RamFuncs_runstart)
msram_ramfuncs :
LOAD = FLASH, PAGE = 0 /* Should be Flash */
//RUN = MSARAM, PAGE = 0 /* Must be CSM secured RAM */
RUN = DPSARAM, PAGE = 0
LOAD_START(_Msram_RamFuncs_loadstart),
LOAD_END(_Msram_RamFuncs_loadend),
RUN_START(_Msram_RamFuncs_runstart)
ADC_RamFuns :
LOAD = FLASH, PAGE = 0 /* Should be Flash */
RUN = DPSARAM, PAGE = 0 /* Must be CSM secured RAM */
LOAD_START(_ADC_ramFuncs_loadstart),
LOAD_END(_ADC_ramFuncs_loadend),
RUN_START(_ADC_ramFuncs_runstart)
.start : LOAD = 0x003f4000, PAGE = 0
{ bios.a28L <boot.o28L> (.sysinit) }
// SPI_RamFuns :
// LOAD = FLASH, PAGE = 0 /* Should be Flash */
// RUN = L3DPSARAM, PAGE = 0 /* Must be CSM secured RAM */
// LOAD_START(_SPI_RamFuncs_loadstart),
// LOAD_END(_SPI_RamFuncs_loadend),
// RUN_START(_SPI_RamFuncs_runstart)
/* Section Cla1Prog used by file Cla.c */
/*
Cla1Prog : LOAD = FLASH, PAGE = 0
RUN = L3DPSARAM_CLAPROG, PAGE = 0
LOAD_START(_Cla1funcsLoadStart),
LOAD_END(_Cla1funcsLoadEnd),
RUN_START(_Cla1funcsRunStart) */
/*** IQmath Sections ***/
IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD
IQmath : > FLASH, PAGE = 0
IQmathTablesRam : > IQTABLES3, PAGE = 0, TYPE = NOLOAD
FlashBegin : > FLASHCHK1, PAGE = 0
FlashEnd : > FLASHCHK2, PAGE = 0
}
MEMORY {
PAGE 1: PIEVECT: origin = 0xd00, len = 0x100
PAGE 1: MSARAM: origin = 0x0, len = 0x800
PAGE 0: LSARAM: origin = 0x8000, len = 0x800
PAGE 0: DPSARAM: origin = 0x8800, len = 0x1800
PAGE 0: OTP: origin = 0x3d7800, len = 0x400
PAGE 0: FLASH: origin = 0x3e8001, len = 0xdffc
PAGE 0: BOOTROM: origin = 0x3ff27c, len = 0xd44
PAGE 0: BEGIN_FLASH: origin = 0x3f5ffd, len = 0x2
PAGE 0: IQTABLES: origin = 0x3fe000, len = 0xb50
PAGE 0: PASSWORDS: origin = 0x3f7ff8, len = 0x8
PAGE 1: FLASHA: origin = 0x3f6000, len = 0x1f80
PAGE 0: IQTABLES3: origin = 0x3febdc, len = 0xaa
PAGE 0: CSM_RSVD: origin = 0x3f7f80, len = 0x76
PAGE 0: FLASHCHK1: origin = 0x3e8000, len = 0x1
PAGE 0: FLASHCHK2: origin = 0x3f5fff, len = 0x1
}