您好!
我已经通过设置 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。
我没有启用任何其他外设。
请在这方面提供帮助。
提前感谢。