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.

[参考译文] TMS320F28379D:混合执行 RAM/闪存调试

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1043938/tms320f28379d-mixed-execution-ram-flash-debugging

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

大家好、

 

虽然具有混合执行的程序、但有些器件是通过闪存执行的、有些实时关键器件是从 RAM 执行的、

我想知道是否可以在一个会话中调试这两个器件。

 

我´m 的方法是使用不同的.cmd 文件进行调试、在这里我将所有内容加载到 RAM 中(比闪存调试形式更有用)。

问题是、我的程序很快就会变得很大、无法完全加载到 RAM 中。

 

是否有解决此问题的建议?

 

非常感谢您的帮助!

此致、

直至

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

    您好、直到

    您应该能够像原样调试应用、将应用的一部分存储在 RAM 中、将应用的一部分存储在闪存中。

    在 RAM 中调试代码时、请确保在应用程序将代码从闪存复制到 RAM 后在 RAM 代码中设置断点。

    2.对于放置在闪存中的代码、唯一的限制是调试器只支持硬件断点、该调试器限制为2个单元。 如果需要其他断点、可以在应用程序代码中嵌入 asm (" ESTOP0");语句。 请删除这些生产代码声明、因为它会影响性能。

    谢谢、
    Ashwini

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

    直至、

    除了阿什维尼所说的话外,还想补充几点:

    请注意、闪存编程器(TI 和第三方)旨在支持完全嵌入式闪存应用-也就是说、所有初始化的段都应映射到链接器 cmd 文件中的闪存。 如果您有任何需要从 RAM 中执行的代码、则应在运行时将其从闪存复制到 RAM 中、然后再进行函数调用。  当 某些已初始化的段映射到 RAM、而某些已映射到闪存时、闪存编程器不保证加载 RAM 内容。  请查看 C2000Ware 示例-所有示例都具有闪存构建配置。

    以下常见问题解答也可能有助于:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/878674/faq-flash---how-to-modify-an-application-from-ram-configuration-to-flash-configuration 

    谢谢、此致、
    Vamsi