This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320F28335:F28335 -在 Code Composer Studio v6中使用28335_RAM_lnk.cmd 时将查找表存储在闪存存储器中

Guru**** 2614265 points
Other Parts Discussed in Thread: C2000WARE

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/695465/ccs-tms320f28335-f28335---storing-lookup-table-in-flash-memory-while-using-28335_ram_lnk-cmd-in-code-composer-studio-v6

器件型号:TMS320F28335
主题中讨论的其他器件:C2000WARE

工具/软件:Code Composer Studio

大家好、

我对 DSP 编程非常陌生。 我尝试在闪存中初始化查找表(浮点阵列)、因为由于 RAM 存储器的大容量、我无法将数据存储在 RAM 存储器中。 我一直使用默认的28335_RAM_lnk.cmd 链接器文件(仅使用 SARAM)。 我知道我需要在链接器命令文件中进行一些更改才能使用闪存。  此外、在初始化时、我是否应该使用 const 浮点而不是浮点?  

为了使我的疑问更加具体、我不会在执行期间在闪存上写入任何内容(只将它们存储为.econst -初始化为全局 const 浮点数组)。 我只想从查找表中读取少量数据(存储为数组)、并在执行时将其用于 RAM 调试中的计算。

目前、链接器命令文件扇区初始化列表如下

codestart:> begin,page = 0
ramfuncs:>RAML0,page = 0
.text:> RAML1,page = 0
.cinit:> RAML0,page = 0
.pinit:> RAML0,page = 0
.switch:>RAML0,page = 0

.stack:>RAMM1,PAGE = 1.
.ebss:> RAML4,PAGE = 1
econst:>RAML5,page = 1.
.esysmem:>RAMM1,PAGE = 1.

IQMath:>RAML1,page = 0
IQmathTables :>IQTABLES,PAGE = 0,TYPE = NOLOAD

我应该如何将其存储在闪存中。  请某人帮助我。

此致

Shiva

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Shiva

    是的、您应该使用"const"。
    下载 C2000Ware、查看我们提供的其他 F2833x 链接器命令文件。

    如果实际上只有这些项目存储在闪存中、则您将设置类似如下的内容(假设您的存储器部分已设置):
    econst:> FLASHA,PAGE = 1

    此致
    Chris