TI中文支持网
TI专业的中文技术问题搜集分享网站

MSP430G2553 P2口多个中断的问题。

各位高手:

        本人目前做一东西,G2553单片机,P2口的2.0 2.2为按键输入,通过RC电路消除抖动,上拉47k,下拉1000pF瓷片电容,然后下降沿触发中断,P2.1配置为PWM输出,2.3 2.4 2.5配置为输出外接发光二极管,低电平点亮发光二极管,P2.6 2.7接32768kHz的手表晶体,P2.0每次按下触发中断到中断复位程序是P2IFG为0x01,正常。P2.2每次按下触发中断时,设置断点查看P2IFG的值总是在 0x24,0x34,0x0c,0x04之间变化,一直没有弄清楚怎么回事,P2.0和P2.2公用一个中断入口地址,在中断函数当中通过switch case语句去判断是哪个按键按下。但是就出现了上面提到的问题,请各位高手不吝赐教。附一段程序

初始化时的程序:P2IE |= BIT0 + BIT2; //P2.0 .2中断使能

                                P2IFG &= ~(BIT0+ BIT2); //中断标志位清零

#pragma vector=PORT2_VECTOR
__interrupt void Port_2(void)
{
       unsigned char Data_Temp;
       Data_Temp = P2IFG;
       P2IFG &= ~(BIT0 + BIT2);
       Data_Temp &= 0x05;
       switch(Data_Temp)

     {

         case 0x01:  break;

         case 0x04:break;

         default:break;

    }
}

Gang Li5:

回复 Xutong Han2:

谢谢了

赞(0)
未经允许不得转载:TI中文支持网 » MSP430G2553 P2口多个中断的问题。
分享到: 更多 (0)