Thread 中讨论的其他器件:C2000WARE
工具与软件:
您好!
我参考了以下位置的 rfft 示例: C:\ti\c2000\C2000Ware_5_02_00_00\libraries\dsp\FPU\c28\examples\fft\2837x_rfft
这没什么问题、我能够启动一个新项目、并根据需要在我的项目中实施 FFT。 然后、我想将 FFT 从示例中给定的256点默认值增加到1024点 FFT。 为此、我将 FFT_STAGE_8从8更改为10、并相应地调整我的阵列大小。 在我进行编译和链接时、我收到以下错误、指出程序无法放入可用内存中:

因此、我决定进入链接器 cmd 文件、并为.ebss 和.econst 段提供更多的存储器空间、方法是为其提供 GSRAM9:

这样就可以编译和构建所有内容。 不过、在运行时、我没有收到我预期的任何数据。 通过调试正在运行的程序、我发现指向 main 函数之前实例化的特定地址的全局变量均未正确初始化、但全部设置为0、如以下代码片段和监视表达式窗口所示:

我开始使用链接器文件、并认为如何尝试增加这些段的存储器容量或使用 GSRAM 时可能会出现问题、因此、我从.text 段获取 LSRAM、然后按如下方式使用:

这似乎解决了这个问题,一切都正常。
通过进一步更改、链接器命令文件中的此配置同样适用于.ebss 使用 LSRAM 而.econst 使用 GSRAM 的情况:

但是、如果我将.ebss 切换至使用 GSRAM、而将.econst 切换至使用 LSRAM、那么它将不再起作用、并且我的全局变量全部为0。
所以我想知道你能不能帮我解释一下实际发生了什么、如果我只是做了一些明显的错误的事情?
此致、
-Mike