急,我在用21375,有一个LDF问题想请教。
如果*.LDF中有定义(如附件LDF文件)
seg_sdram_pm { TYPE(PM RAM) START(0x00200000) END(0x0022FFFF) WIDTH(16) }
(略)--
seg_sdram_pm
{
INPUT_SECTIONS( $OBJECTS(seg_pmco) $LIBRARIES(seg_pmco))
INPUT_SECTIONS( $OBJECTS(seg_dmda) $LIBRARIES(seg_dmda))
INPUT_SECTIONS( $OBJECTS(seg_pmda) $LIBRARIES(seg_pmda))
} > seg_sdram_pm
(略)--
那下面的代码是不是就是指定在SDRAM中?
section("seg_sdram_pm")
void Gain_Render(float *in,float *out,float amp,int tickSize)
{
int i;
for (i=0; i<tickSize; i++) {
out[i] = in[i] * amp;
}
}
但是我这样去做的话,编译时,就出现下面的错误:
[Warning li2060] The following input section(s) that contain program code
and/or data have not been placed into the executable for processor 'P0'
as there are no relevant commands specified in the LDF:
.\Debug\Gain.doj(seg_sdram_pm)
[Error li1060] The following symbols are referenced, but not mapped:
'_Gain_Render' referenced from .\Debug\InitAudio.doj(seg_pmco)
请帮忙分析一下,ADI的这个LDF搞得太复杂了!