Part Number:TMS320F28027
这两个是代码中用到的函数,将它申明了一下
#pragma CODE_SECTION(_IQ20sin, "ramfuncs"); //也可以在FLASH运行
#pragma CODE_SECTION(_IQ20asin, "ramfuncs"); //也可以在FLASH运行
CMD文件 :
IQmath : > FLASHB PAGE = 0 /* Math Code */
IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD
IQmathTablesRam : > IQTABLES3 PAGE = 0, TYPE = NOLOAD
IQmathTables3 : > IQTABLES3, PAGE = 0, TYPE = NOLOAD
{
IQmath.lib<IQNasinTable.obj> (IQmathTablesRam)
//IQmath.lib<IQNasinTable.obj> (IQmathTablesRam)
}
IQmathfuncs : LOAD = FLASHB,
RUN = RAMM0|RAMM1|RAML0, PAGE = 0
LOAD_START(_IQmathFuncRamLoadStart),
LOAD_END(_IQmathFuncRamLoadEnd),
RUN_START(_IQmathFuncRamRunStart),
{
-l IQmath.lib<IQ20sin.obj>(IQmath) //123行
-l IQmath.lib<IQ20asin.obj>(IQmath)
}
报错信息:"../cmd/F2802x_generic_flash.cmd", line 123: warning: no matching section
Green Deng:
你好,我看你的程序是在flash中运行,然后想将IQmath部分的代码搬移到ram运行吗?有调用memcpy函数吗?
另外除了在工程配置里面有这个lib的链接配置外,是否有在工程中引用该库中的函数?
,
jiangtao zhou:
main里面调用了memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
但没有调用iq的拷贝,IQ这个没有SIZE,我不知道如何写MEMCPY,工程中调用了库中的函数IQ20sin,IQ20asin
,
jiangtao zhou:
我想将这两个函数放到内存中运行,但搜索了好多贴 子都没搜索到。
,
Green Deng:
找到了两个相关的帖子,可以看看帖子中的回复:
https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/30683/lib-ram
e2echina.ti.com/…/cmd