430进入低功耗,执行完中断,是保持低功耗还是退出低功...
430进入低功耗,执行完中断,是保持低功耗还是退出低功... 来个高手回答下 这要看你代码怎么写,这两种行为都可以实现。 中断处理程序中如果有执行 LPM4_EXIT就推出低功耗了,如果没有这句就继续LPM。 本帖最后由 alextime 于 2014-1-15 17:59 编辑
divineliu 发表于 2014-1-15 17:25
中断处理程序中如果有执行 LPM4_EXIT就推出低功耗了,
如果没有这句就继续LPM。 ...
好的 知道了 谢谢了
我刚才仿真了下 跟踪了下SR寄存器,发现我从低功耗模式3进入中断,SR显示的不是活跃模式也不是低功耗模式,而是SCG1 = 0;SCG0 = 1; OSCOFF = 0; CPUOFF = 0;不知道是什么状态?
是代表低功耗模式1么? alextime 发表于 2014-1-15 17:58
好的 知道了 谢谢了
我刚才仿真了下 跟踪了下SR寄存器,发现我从低功耗模式3进入中断,SR显示的不是活跃 ...
嘿嘿,用微安表来测测功耗就知道了,哪个低用哪个~ alextime 发表于 2014-1-15 17:58
好的 知道了 谢谢了
我刚才仿真了下 跟踪了下SR寄存器,发现我从低功耗模式3进入中断,SR显示的不是活跃 ...
中断发生的时候,430自动进入活动状态,所以终端处理函数之内
是活动状态的。
退出终端处理函数的时候,会把堆栈里面保存的SR寄存器恢复到之前,
所以退出后就继续LPM了。
如果有LPMX_EXIT的话,会改变堆栈里面保存的SR寄存器的值,
这样退出中断函数后还会继续处理活动状态。 mark 1
页:
[1]