打印

请问MSP430F149可不可以利用外部中断实现控制低功耗的开关

[复制链接]
1729|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
louant|  楼主 | 2013-10-21 11:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 louant 于 2013-10-21 18:40 编辑

//说明:利用P1.5端口的中断功能,第一次进入中断,是系统进入低功耗LPM3;第二次进入中断,退出低功耗LPM3

int count = 0;  //记录进入中断次数
void main()
{

       WDTCTL = WDTPW + WDTHOLD;
        P1IFG &= ~BIT5;    //清除P1IFG
        P1IE |= BIT5;       //打开中断允许
        P1IES |= BIT5; //选择下降沿触发

       P4DIR |= BIT0;        //P4。0输出
       P4OUT |= BIT0;        //P4.0灯点亮
       _EINT();
        while(1);
}

#pragma vector = PORT1_VECTOR
__interrupt void P1_5_ISR(void)
  {
if( ( P1IFG & BIT5) == BIT5 ) //中断响应
        {
            P1IFG &= ~BIT5; //清除中断标志
            count++;
            
            if(count== 1)        //第一次按下按键,进入低功耗
              {                  
                  LPM3;
                  P4OUT &= ~BIT0;       //流水灯关闭
              }
            else if(count== 2)   //第二次按下按键,退出低功耗
              {
                  LPM3_EXIT;
                  count = 0;
                  P4OUT |= BIT0;            //流水灯打开
              }
        }
}

问题是:第一次进入中断可以进入低功耗模式,灯灭;第二次时没响应,不知道怎么回事。
是第一次进入低功耗以后一直处在低功耗之中,P1.5端口不能输入了么?
对于低功耗不是很了解,上述程序写法是否有错,希望能人给予解答,万谢!!!!

相关帖子

沙发
dirtwillfly| | 2013-10-21 11:52 | 只看该作者
从LMP3模式下,唤醒进入终端服务程序后,SCG0仍然置位,DC发生器仍被关闭,MCLK不能正常运行
需要清除SCG0控制位才行

另外,你的count加到2之后,没被清零。

使用特权

评论回复
板凳
louant|  楼主 | 2013-10-21 18:46 | 只看该作者
dirtwillfly 发表于 2013-10-21 11:52
从LMP3模式下,唤醒进入终端服务程序后,SCG0仍然置位,DC发生器仍被关闭,MCLK不能正常运行
需要清除SCG0 ...

代码复制时写错了,实际已经做了 count 清零
我是想实现这样的效果:程序运行后,电机一直运转,当按下一次按键后,进入中断并进入低功耗LPM3模式,电机停止;
再次按下按键后,进入中断退出低功耗LPM3模式,电机继续运转  (P4OUT可以认为是电机的开关)
我按如上代码编写,可以进入低功耗模式,但按下第二次按键就没任何响应,是系统任然处在低功耗模式而没有进入中断?还是别的原因?

使用特权

评论回复
地板
dirtwillfly| | 2013-10-21 19:12 | 只看该作者
我已经说过了。CG0仍然置位,DC发生器仍被关闭,MCLK不能正常运行,需要清除SCG0控制位才行

使用特权

评论回复
5
louant|  楼主 | 2013-10-21 19:18 | 只看该作者
dirtwillfly 发表于 2013-10-21 19:12
我已经说过了。CG0仍然置位,DC发生器仍被关闭,MCLK不能正常运行,需要清除SCG0控制位才行 ...

大侠,写下相关代码不,低功耗我没用过

使用特权

评论回复
6
dirtwillfly| | 2013-10-21 22:54 | 只看该作者
推荐你看看 MSP430系列单片机系统工程设计与实践 这本书,讲的很详细。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
louant + 1 好的,有资料总比瞎捉摸强,谢谢耐心回复.
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

7

帖子

0

粉丝