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.

[参考译文] TMS320F2.8377万S:RAM分配问题

Guru**** 2482225 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/659278/tms320f28377s-ram-allocation-problem

部件号:TMS320F2.8377万S

您好,

当我打开CCS中的内存分配选项卡时,我注意到我的所有变量都存储在一个2k长段(RAMLS5)中。 我想知道我是否可以使用RAM的其余部分进行变量存储。

谢谢

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

    你好

    您可以打开链接器命令文件-项目的".cmd"文件,以了解如何利用内存。 该文件称为“2.8377万S_RAM.cmd”或“2.8377万S_flash.cmd”。

    在该文件中,您可以看到在文件的“内存”部分中使用了多少MCU的内存块,以及程序部分在“节”部分中的分布情况。

    变量通常放置在节".ebss"中,因此您应该找到类似于".ebss:> RAMLS5    page =1"的字符串。 您可以在此处将内存块更改为要用于变量的内存块。 无论如何,我可以看到您的所有变量都已成功放入RAMLS5中,因此此时无需更改任何内容。

    要在此处获取有关链接程序命令文件的更多信息,请执行以下操作:  

    详细文档是 SPRU513。 您可以在此处浏览第8章-链接器说明:    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,
    我似乎在项目目录中找不到项目的.cmd文件,我应该从某个位置复制它吗?
    我打算以后再用几个KB,是否可以用更多的内存块来存储变量?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好

    如果您的项目资源管理器中没有链接器,则可能会通过项目属性将其拉入。 右键单击并转至项目属性->常规页面。 此时将出现一个下拉框,其中应列出链接器。 您可以使用浏览按钮找到文件夹。 如果您使用的是示例,链接器始终位于/common/cmd目录下。
    是的,您可以将内存类型分配给不同的部分,如果使用更多内存,则可以进行扩展。
    另一个维客: processors.wiki.ti.com/.../C28x_Compiler_-_Understanding_Linking

    此致
    Chris