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.

[参考译文] 使用 memcpy &ramfuncs 后、程序只运行一次、每次引导时不会将 ramfuncs 复制到 ram。

Guru**** 2528230 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/886202/after-using-memcpy-ramfuncs-program-only-runs-once-ramfuncs-not-being-copied-to-ram-at-every-boot

器件型号:TMS320F28027

我尝试将函数(ePWM 中断)加载到 RAM 中。 我对链接器文件进行了一些更改。 基本上、添加了一行。 当我进行调试时、该函数看起来是从 RAM 运行的。 但是、如果我重新启动控制器、它就会消失。 我意识到每次启动时都需要复制该函数。 但情况并非如此。 如何使其在每次引导时复制函数。

我注意 到、即使在添加 ramfuncs 并对链接器文件进行更改之后、我仍然会收到错误"creating output section "ramfuncs" without a SECTIONS specification。 我已添加项目的 zip 文件。 我已经查找了许多参考文献和示例代码。 我还需要做什么才能使其正常工作? 感谢您的任何帮助。

谢谢、

Steven.e2e.ti.com/.../TheCode-v0.53.rar

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

    您好 Steven、

    您应该能够修改链接器命令文件、使其从一个地址位置加载并从其他位置运行。 请看一下  

    http://software-dl.ti.com/ccs/esd/documents/sdto_cgt_Linker-Command-File-Primer.html

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

    您好、Santosh、

    您能更具体一点吗? 我必须在链接器文件中更改什么?

    此致、

    Steven

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

    Steven、

    您使用的是哪种 TI 编译器版本?

    #ifdef __TI_Compiler_version__
    #if 0//__TI_Compiler_version__>=15009000 
    .TI.ramfunc:{}负载= FLASHA,
    运行= PRAML0、
    load_start (_RamfuncsLoadStart)、
    load_end (_RamfuncsLoadEnd)、
    run_start (_RamfuncsRunStart)、
    load_size (_RamfuncsLoadSize)、
    PAGE = 0
    #else
    ramfuncs :load = FLASHA,
    运行= PRAML0、
    load_start (_RamfuncsLoadStart)、
    load_end (_RamfuncsLoadEnd)、
    run_start (_RamfuncsRunStart)、
    load_size (_RamfuncsLoadSize)、
    PAGE = 0
    #endif
    #endif 

    我尝试构建您的代码、但我遇到了相同的错误。 然后、我注释了编译器版本检查、然后它正在构建中。 我使用 CGT 18.12.03 STS。

    因此、请检查编译器版本并相应地修改检查。

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

    尊敬的 Santosh:

    解决了我的问题。 我也在我的硬件上检查了它。 非常感谢。

    但是、不应在未来的 C2000官方更新中进行这些更改。

    无论如何、非常感谢。

    Steven。