我在使用TI自带的程序例程编译时出现如下问题:
我是在讲CMD文件选到RAM.CMD有效时出现上面的问题。
RAM.CMD文件如下:
MEMORY
{
PAGE 0 :
/* Note that the memory allocation below does not create sections as necessary for
the CLA on the F2803x.*/
BEGIN : origin = 0x000000, length = 0x000002
BOOT_RSVD : origin = 0x000002, length = 0x00004E RAMM0 : origin = 0x000050, length = 0x0003B0
progRAM : origin = 0x008000, length = 0x001800
IQTABLES : origin = 0x3FE000, length = 0x000B50 /* IQ Math Tables in Boot ROM */
IQTABLES2 : origin = 0x3FEB50, length = 0x00008C /* IQ Math Tables in Boot ROM */
IQTABLES3 : origin = 0x3FEBDC, length = 0x0000AA /* IQ Math Tables in Boot ROM */
RESET : origin = 0x3FFFC0, length = 0x000002
BOOTROM : origin = 0x3FF27C, length = 0x000D44
PAGE 1 :
RAMM1 : origin = 0x000480, length = 0x000380
ADCDRVRAM : origin = 0x009800, length = 0x000020
PFCICMDRAM : origin = 0x009820, length = 0x000020
GENSINCOS : origin = 0x009840, length = 0x000020
PWMDRVRAM : origin = 0x009860, length = 0x000020
CNTL2P2ZRAM : origin = 0x009880, length = 0x000030
dataRAM1 : origin = 0x0098b0, length = 0x000010
CNTL2P2ZBUFF : origin = 0x0098c0, length = 0x000030
DLOG : origin = 0x009900, length = 0x000020
dataRAM : origin = 0x009920, length = 0x000680
CLA_CPU_MSGRAM : origin = 0x001480, length = 0x000080
CPU_CLA_MSGRAM : origin = 0x001500, length = 0x000080
}
SECTIONS
{
codestart : > BEGIN, PAGE = 0
ramfuncs : > RAMM0, PAGE = 0
.text : > progRAM, PAGE = 0
.cinit : > progRAM, PAGE = 0
.pinit : > RAMM0, PAGE = 0
.switch : > RAMM0, PAGE = 0
.reset : > RESET, PAGE = 0, TYPE = DSECT
.stack : > RAMM1, PAGE = 1
.ebss : > dataRAM, PAGE = 1
.econst : > dataRAM, PAGE = 1
.esysmem : > RAMM1, PAGE = 1
IQmath : > progRAM, PAGE = 0
IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD
Cla1ToCpuMsgRAM : > CLA_CPU_MSGRAM, PAGE = 1
CpuToCla1MsgRAM : > CPU_CLA_MSGRAM, PAGE = 1
/* Uncomment the section below if calling the IQNexp() or IQexp()
functions from the IQMath.lib library in order to utilize the
relevant IQ Math table in Boot ROM (This saves space and Boot ROM
is 1 wait-state). If this section is not uncommented, IQmathTables2
will be loaded into other memory (SARAM, Flash, etc.) and will take
up space, but 0 wait-state is possible.
*/
/*
IQmathTables2 : > IQTABLES2, PAGE = 0, TYPE = NOLOAD
{
IQmath.lib<IQNexpTable.obj> (IQmathTablesRam)
}
*/
/* Uncomment the section below if calling the IQNasin() or IQasin()
functions from the IQMath.lib library in order to utilize the
relevant IQ Math table in Boot ROM (This saves space and Boot ROM
is 1 wait-state). If this section is not uncommented, IQmathTables2
will be loaded into other memory (SARAM, Flash, etc.) and will take
up space, but 0 wait-state is possible.
*/
/*
IQmathTables3 : > IQTABLES3, PAGE = 0, TYPE = NOLOAD
{
IQmath.lib<IQNasinTable.obj> (IQmathTablesRam)
}
*/
}
SECTIONS
{
ISRVariables : > dataRAM PAGE = 1
/************* DPLIB Sections C28x ************************/
ADCDRV_5ch_Section : > ADCDRVRAM PAGE = 1
/* CNTL_2P2Z section */
CNTL_2P2Z_Section : > CNTL2P2ZRAM PAGE = 1
CNTL_2P2Z_InternalData : > CNTL2P2ZBUFF PAGE = 1
CNTL_2P2Z_Coef : > dataRAM PAGE = 1
/*DLOG_4CH section */
DLOG_4ch_Section : > DLOG PAGE = 1
DLOG_BUFF : > dataRAM PAGE = 1
/*MATH_EMAVG section */
GEN_Sin_Cos_Section : > GENSINCOS PAGE = 1
/*PFC_ICMD section*/
INV_ICMD_Section : > PFCICMDRAM PAGE = 1
/* PWMDRV_PFC2PhiL driver section */
PWMDRV_FBINV_Section : > PWMDRVRAM PAGE = 1
/* ZeroNet_Section */
ZeroNet_Section : > dataRAM PAGE = 1
DLOG : > dataRAM,PAGE=1
}
提示的问题指示出现在最后一行。
麻烦工作人员帮忙指导一下。谢谢!
JLDN:
回复 Hardy Zhou:
你好! 谢谢 我按照你的说法操作。使用rebuild project 就没有错误提示了。但是这个段能取消?
我在使用TI自带的程序例程编译时出现如下问题:
我是在讲CMD文件选到RAM.CMD有效时出现上面的问题。
RAM.CMD文件如下:
MEMORY
{
PAGE 0 :
/* Note that the memory allocation below does not create sections as necessary for
the CLA on the F2803x.*/
BEGIN : origin = 0x000000, length = 0x000002
BOOT_RSVD : origin = 0x000002, length = 0x00004E RAMM0 : origin = 0x000050, length = 0x0003B0
progRAM : origin = 0x008000, length = 0x001800
IQTABLES : origin = 0x3FE000, length = 0x000B50 /* IQ Math Tables in Boot ROM */
IQTABLES2 : origin = 0x3FEB50, length = 0x00008C /* IQ Math Tables in Boot ROM */
IQTABLES3 : origin = 0x3FEBDC, length = 0x0000AA /* IQ Math Tables in Boot ROM */
RESET : origin = 0x3FFFC0, length = 0x000002
BOOTROM : origin = 0x3FF27C, length = 0x000D44
PAGE 1 :
RAMM1 : origin = 0x000480, length = 0x000380
ADCDRVRAM : origin = 0x009800, length = 0x000020
PFCICMDRAM : origin = 0x009820, length = 0x000020
GENSINCOS : origin = 0x009840, length = 0x000020
PWMDRVRAM : origin = 0x009860, length = 0x000020
CNTL2P2ZRAM : origin = 0x009880, length = 0x000030
dataRAM1 : origin = 0x0098b0, length = 0x000010
CNTL2P2ZBUFF : origin = 0x0098c0, length = 0x000030
DLOG : origin = 0x009900, length = 0x000020
dataRAM : origin = 0x009920, length = 0x000680
CLA_CPU_MSGRAM : origin = 0x001480, length = 0x000080
CPU_CLA_MSGRAM : origin = 0x001500, length = 0x000080
}
SECTIONS
{
codestart : > BEGIN, PAGE = 0
ramfuncs : > RAMM0, PAGE = 0
.text : > progRAM, PAGE = 0
.cinit : > progRAM, PAGE = 0
.pinit : > RAMM0, PAGE = 0
.switch : > RAMM0, PAGE = 0
.reset : > RESET, PAGE = 0, TYPE = DSECT
.stack : > RAMM1, PAGE = 1
.ebss : > dataRAM, PAGE = 1
.econst : > dataRAM, PAGE = 1
.esysmem : > RAMM1, PAGE = 1
IQmath : > progRAM, PAGE = 0
IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD
Cla1ToCpuMsgRAM : > CLA_CPU_MSGRAM, PAGE = 1
CpuToCla1MsgRAM : > CPU_CLA_MSGRAM, PAGE = 1
/* Uncomment the section below if calling the IQNexp() or IQexp()
functions from the IQMath.lib library in order to utilize the
relevant IQ Math table in Boot ROM (This saves space and Boot ROM
is 1 wait-state). If this section is not uncommented, IQmathTables2
will be loaded into other memory (SARAM, Flash, etc.) and will take
up space, but 0 wait-state is possible.
*/
/*
IQmathTables2 : > IQTABLES2, PAGE = 0, TYPE = NOLOAD
{
IQmath.lib<IQNexpTable.obj> (IQmathTablesRam)
}
*/
/* Uncomment the section below if calling the IQNasin() or IQasin()
functions from the IQMath.lib library in order to utilize the
relevant IQ Math table in Boot ROM (This saves space and Boot ROM
is 1 wait-state). If this section is not uncommented, IQmathTables2
will be loaded into other memory (SARAM, Flash, etc.) and will take
up space, but 0 wait-state is possible.
*/
/*
IQmathTables3 : > IQTABLES3, PAGE = 0, TYPE = NOLOAD
{
IQmath.lib<IQNasinTable.obj> (IQmathTablesRam)
}
*/
}
SECTIONS
{
ISRVariables : > dataRAM PAGE = 1
/************* DPLIB Sections C28x ************************/
ADCDRV_5ch_Section : > ADCDRVRAM PAGE = 1
/* CNTL_2P2Z section */
CNTL_2P2Z_Section : > CNTL2P2ZRAM PAGE = 1
CNTL_2P2Z_InternalData : > CNTL2P2ZBUFF PAGE = 1
CNTL_2P2Z_Coef : > dataRAM PAGE = 1
/*DLOG_4CH section */
DLOG_4ch_Section : > DLOG PAGE = 1
DLOG_BUFF : > dataRAM PAGE = 1
/*MATH_EMAVG section */
GEN_Sin_Cos_Section : > GENSINCOS PAGE = 1
/*PFC_ICMD section*/
INV_ICMD_Section : > PFCICMDRAM PAGE = 1
/* PWMDRV_PFC2PhiL driver section */
PWMDRV_FBINV_Section : > PWMDRVRAM PAGE = 1
/* ZeroNet_Section */
ZeroNet_Section : > dataRAM PAGE = 1
DLOG : > dataRAM,PAGE=1
}
提示的问题指示出现在最后一行。
麻烦工作人员帮忙指导一下。谢谢!
JLDN:
回复 Hardy Zhou:
你好!谢谢!
我按照你的说法操作,注销这句话后 再编译就没有错误了。
我查看了下程序,程序里没有用到这个段的。而且在FLASH.CMD文件里也有这个段的分配和RAM.CMD的语句一样。但是是被注销掉的。
段名和程序空间名重复的话可以?