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.

[参考译文] AM2634:如何在 SysConfig 中添加.cinit 输出段

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1385575/am2634-how-to-add-cinit-output-section-in-sysconfig

器件型号:AM2634
主题中讨论的其他器件:SysConfig

工具与软件:

您好!

由于原因未知、许多 SDK 示例都使用 RAM 初始化模型。 这意味着在调试 FreeRTOS 内核时、由于是的初始化程序、代码不能多次运行  

缺少 uxCurrentNumberOfTasks。 总之、解决方案是使用 ROM 模型打开自动初始化:

当然、这会创建.cinit 段。 但是、SysConfig 生成 linker.cmd 中没有定义的输出节、因此我会收到一条警告:

在手动维护的链接器脚本中、我希望看到如下所示的内容:

.cinit              : > OCRAM 

如何将适当的.cinit 节添加到 SysConfig 中的内存配置器?

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

    尊敬的 Kier:

    要在内存配置器中添加该部分、请执行以下步骤:

    1.打开应用的 example.syscfg

    2.转到存储器配置器部分、在各个部分中添加一个放置在 OCRAM 中的新部分、例如"cint_section"。 然后在新段中向下滚动并添加一个名为".cint"的输出段、并使用填充检查对齐情况。

    3.如果您需要帮助,请参阅此屏幕截图

    现在、保存并关闭 example.syscfg。 重新构建您的应用并检查 linker.cmd 文件。

    此致、
    Shaunak

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

    尊敬的 Shaunak:

    好极了、谢谢。

    最后、我刚刚将.cinit 添加到了"初始化和异常处理"部分、这似乎是合适的。 似乎 也能正常工作。