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.

[参考译文] LAUNCHXL-F280039C:有关"_system_post_cinit ()"的异常错误在运行时触发、它将跳转到"0x3feef8"。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1245612/launchxl-f280039c-an-exception-error-about-_system_post_cinit-is-triggered-at-runtime-and-it-will-jump-to-0x3feef8

器件型号:LAUNCHXL-F280039C

大家好、

客户有问题需要您的帮助:

我在 BSP 开发阶段发现了这个问题、还没解决。 BSP 开发结束后、我就要回去重新处理这个问题。

经常中断操作时、重现问题非常容易。

例如:串行端口在接收到一串数据后返回相同的数据。

提问:

1.引发此问题的可能原因是什么?

2.当程序跳到"0x3feef8"的时候,如何检查问题的根源?

说明:

*1. 程序架构基于时间片轮询机制。

*2. 如果关闭了时间片轮询机制,则不会发生这种情况。

*3. 由于加密系统的原因、无法提供源文件。

您能帮助检查这个问题吗?

谢谢。此致、

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

    Ben、

    这个地址、0x3FEEF8、位于器件的 BROM 内。  这就是 CCS 返回无源错误的原因、但对客户更重要的是、为什么我们在代码执行期间跳转到了 BROM。

    客户提到这可能发生在高 ISR 负载下、他们可能希望确保堆栈不会溢出、特别是如果它们嵌套中断(即在其他中断内部启用中断)。  如果堆栈溢出、它们可能损坏其源代码、或者如果堆栈指针(SP)不在有效的存储器范围内、则没有有效的返回地址。

    我相信 CCS 中有一个堆栈分析工具可以实时运行、以便对此进行诊断。

    此致!

    马修

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

    Matthew、您好!

    客户一开始检查了堆栈问题、但没有发现任何问题。

    配置:

    调试(正常):

    调试(发生异常):

    堆栈用法:

    以上:小费100%,如何理解这一点?

    上面:感叹号是什么意思?

    此致、

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

    Ben、

    感谢提供信息、看起来堆栈受到了很好的控制。  我需要查看"!" 还有一点、我觉得如果客户在这个问题上多留点时间、应该给一些小费。

    我们知道客户是否嵌套了中断、即在其他 ISR 内重新启用中断?  如果管理不当、可能导致堆栈损坏和用于返回地址的地址不正确。

    此致!

    马修

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

    尊敬的 Mattherw:

    感谢你的帮助。 问题与中断有关。