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.

[参考译文] RTOS/MSP430FR5994:终止调试会话

Guru**** 2614265 points
Other Parts Discussed in Thread: MSP-EXP430FR5994, MSP430FR5994

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/666481/rtos-msp430fr5994-terminating-debug-session

部件号:MSP430FR5994
主题中讨论的其他部件:MSP-EXP430FR5994

工具/软件:TI-RTOS

大家好,

我正在MSP430FR5994 LaunchPad上运行GPIO中断示例项目。  用于MSP430的TI-RTOS ->开发工具 -> MSP-EXP430FR5994 ->驱动程序示例 -> GPIO示例。

我注意到,在我终止调试会话后,代码将停止在我的LaunchPad上执行。 按下重置按钮后,代码再次运行。 我在暂停和恢复时没有看到任何问题,只是在终止时。 为什么调试会话结束后,代码停止在设备上执行?

我在LaunchPad上运行裸机(无操作系统)时也从未遇到过此问题,仅在本例中。

此致,

阿卡什

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

    您描述的行为与我在所有LaunchPad上的体验完全相同,因此与TI-RTOS没有任何关系。 多年来我发现,每当终止调试模式时,都需要“重置”MCU,以便代码再次开始执行。 我从不停下来想。 让我咨询我们的工具专家,看看他们能否解释这种行为。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Dennis,

    感谢您的回复。 我认为它与RTOS有关的原因是,在运行没有RTOS的示例时,我从未注意到这种现象,例如msp430fr599x_1.c,它只是使主板上的LED闪烁。 但是,我注意到,在本例中,当终止调试会话时,LED会短暂熄灭。 了解调试器终止时会发生什么以及向MSP430发送哪种类型的信号是很有意义的。

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

    当调试会话终止时,它将重置器件,并让我们开始JTAG线路。 这是在设备上退出调试模式的最简单方法。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Jace:

    感谢您的回复。 (重置后) RTOS代码不执行和裸机代码执行的原因是什么? 是否有办法在调试会话终止后执行RTOS代码?

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

    我不确定这一点,因为我没有很多关于TI-RTOS的经验。 可能是RAM中的某个内容没有正确清除? 不确定。 关闭并重新打开电源后,TI-RTOS是否正常运行?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jace,

    我对RTOS没有太多经验,所以也不太确定。

    但是是的,在终止调试器后执行电源循环后,我们恢复正常。

    只是想知道调试器终止时RTOS和裸机的行为不同。

    此致,
    阿卡什

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

    我仍在等待工具团队的回复,以解释这种行为。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Akash,

    我正在与一位工具专家合作,但他无法准确解释正在发生的事情。 调试器不知道软件是裸机还是操作系统(显然),正如Jace指出的那样,调试器将退出调试模式并释放JTAG线路。 唯一的区别是RTOS必须依赖于裸机代码不是的其他内容。
    他想知道您是否在RTOS中使用低功耗模式以及哪个级别? LPM0,LPM3等
    另外,RTOS是否可能正在修改EEM中的任何调试寄存器?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Dennis,

    感谢你的帮助。

    我认为我们不会进入LPM。 我们所看到的示例是MSP430FR5994 LaunchPad上的GPIO中断示例项目。 用于MSP430的TI-RTOS ->开发工具-> MSP-EXP430FR5994 ->驱动程序示例-> GPIO示例。

    我不确定如何检查RTOS是否正在修改EEM中的任何调试寄存器。

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

    很抱歉,为您找到答案需要很长时间。
    我联系了RTOS团队处理您的问题。
    希望他们能够解释发生了什么。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Akash,

    有人告诉我这两种情况下的行为应该没有什么不同。
    如果RTOS在PUC后正常运行并重置,则没有任何需要担心的事情,此时必须解释原因。