[应用相关] 程序在什么时候唤醒中断?

[复制链接]
988|11
 楼主| sourceInsight 发表于 2019-1-3 13:24 | 显示全部楼层 |阅读模式
我看的一本书里面,低功耗是这么做的:
main()
{
     ...
     ...
     for(;;)
     {
          _BIS_SR(LPM3_bits);
          _nop();
      }
}

#pragma vector=PORT1_VECTOR

__interrupt void getKeyValue(void)

{
      P2OUT^=0x01;
}

可以看到,在主程序中,有一个for循环,里面基本上没什么操作。就是进入到低功耗模式。按照我的理解,进入到低功耗模式后,CPU便停在那个地方等待中断,当有中断的时候,进入中断。
我不太明白的是:程序在什么时候唤醒中断?
boy1990 发表于 2019-1-3 13:29 | 显示全部楼层
是不是还要有专门的唤醒的函数?
CallReceiver 发表于 2019-1-3 13:29 | 显示全部楼层
中断后自动便把CPU唤醒了?
mmuuss586 发表于 2019-1-3 13:31 | 显示全部楼层
hfdy01 发表于 2019-1-3 13:32 | 显示全部楼层
既然CPU碰到LPM4这样的句子就会停止CPU的话,如果在中断服务函数里写上那个句子,会不会使得CPU始终停留在那个中断服务函数里?
xia00 发表于 2019-1-3 13:33 | 显示全部楼层
中断信号应该就是唤醒信号吧
feiqi1 发表于 2019-1-3 13:36 | 显示全部楼层

再说也没有人会在中断程序里面写上睡眠指令的!
androidbus 发表于 2019-1-3 13:38 | 显示全部楼层
你可以通过这个测试一下,想法是否正确的!
{
      P2OUT^=0x01;
     _BIS_SR(LPM3_bits);
          _nop();
P2OUT^=0x01;


}
litengg 发表于 2019-1-3 13:42 | 显示全部楼层
中断发生后,应该自动把CPU唤醒的吧
qiangweii 发表于 2019-1-3 13:42 | 显示全部楼层
这个中断的处理还是很关键的
shashaa 发表于 2019-1-3 13:45 | 显示全部楼层
这个要合理的配置系统的低功耗模式的
wanglaojii 发表于 2019-1-3 13:45 | 显示全部楼层
这个就是在有硬件的按键产生的中断的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

138

主题

1619

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部