外部中断实现控制低功耗

2019-07-21 19:32发布

MSP430F149可不可以利用外部中断实现控制低功耗的开关
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
zhenykun
2019-07-22 03:30

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;            //流水灯打开
              }
        }
}

一周热门 更多>