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.

[参考译文] MSP430F5437A:在从 LPM3唤醒时、它不会返回到主 while (1)循环

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/835005/msp430f5437a-on-waking-up-from-lpm3-it-is-not-returning-to-the-main-while-1-loop

器件型号:MSP430F5437A

您好!

我已经通过设置 SCG0、SCG1、CPUOFF 位和清除 OSCOFF 位将微控制器置于 LPM3模式、仅启用 RTC 计数器事件中断。

它确实进入了睡眠模式、因为在 main while (1)中、我每隔5秒就切换一次 LED 发光、并且在一次切换 LED 后它停止、并且睡眠模式代码按照我的编码执行。

在确定了一段时间后、睡眠模式被 RTC 计数器事件中断中断中断中断中断中断中断中断、该中断被设置为30秒、并通过使中断服务程序中的 LED 亮起来确保该中断。

在中断服务例程中、我已通过清除 ISR 代码末尾的 SCG0、SCG1、CPUOFF 和 OSCOFF 位将模式更改为激活模式、并希望运行 LED 切换代码、然后再次将 微控制器置于 LPM3睡眠模式。

但现在 LED 持续亮起、这必须由 ISR 启用并保持该状态。

它似乎没有恢复 while (1)代码、如果它恢复、它应该会切换一次 LED。

不知道原因是什么。

我使用 ACLK 作为 RTC 计数器、ACLK 被分配给 XT1振荡器、频率为32kHz。

我没有启用任何其他外设。

请在这方面提供帮助。

提前感谢。