TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F28027: 如何将IQMath放到内存中运行?我写了一堆,它还是不对。

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

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28027: 如何将IQMath放到内存中运行?我写了一堆,它还是不对。
分享到: 更多 (0)