msp430中断返回后为何要退出低功耗

2025-03-01 22:14:37
推荐回答(3个)
回答1:

进入中断后,CPUOFF, SCG1和 OSCOFF位会自动复位,这时就退出低功耗模式了,如果这时中断函数结束,就不会改变工作模式,即在正常模式下。
一般来说,在中断函数最后加上
__bic_SR_register_on_exit(LPM4_bits);
__bic_SR_register_on_exit(LPMx_bits);
可以使得mcu在中断返回后进入任意低功耗模式。
你可以在你的中断函数最后加上这两句试试:-)

回答2:

中断返回后退出低功耗,这样才能继续执行main中的其他内容,如果中断返回之后不用执行任何内容,不用退出低功耗

回答3:

好像低功耗就是让CPU休眠,当中断用到CPU,在中断开始要退出低功耗状态。比如
#pragma vector-XXXX_VECTOR
__interrupt void XXXXX_X(void)
{
LPM3_EXIT;
}