MSP430技术论坛
直播中

woaimsp

7年用户 3经验值
私信 关注
[问答]

msp430f5529 io中断为啥出不来呢,谢谢

#include"msp430.h"
#define uint unsigned int
int main(void)
{
    void delay(uint);
    /*管脚配置P1.0为灯输出模式,P1.1为键盘中断*/
    P1DIR |= (BIT0+(~BIT1));
    P1REN |= (BIT0+BIT1);
    P1OUT |= ((~BIT0)+BIT1); //LED 最初不亮
    /*中段寄存器配置*/
    //开中断   
    P1IFG &= (~BIT1);
    P1IES |= BIT1;//下降沿触发
    P1IE |= BIT1;

    _EINT();//开总中断
  
    while(1);
}
void delay(uint ms)
{
    uint i,j;
    for(i=ms;i>0;i++)
        for(j=110;j>0;j--);
}
#pragma vector = PORT1_VECTOR
__interrupt void Key_interrput(void)
{

    delay(50);
    if((P1IFG&BIT1)!=0)
    {
//        if((P1OUT&BIT0)==0)
//        else P1OUT &= (~BIT0);
        P1OUT |= BIT0;
        P1IFG &=(~BIT1);
        P1OUT |= BIT1;
    }
}

更多回帖

发帖
×
20
完善资料,
赚取积分