多个中断如何处理呢

2019-03-24 13:52发布

刚开始学Launchpad,想问一下,如果想在多个IO上触发中断,中断函数应该是怎样的?? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
jishuaihu
1楼-- · 2019-03-24 15:44
没有用过430,但一般的单片机多个管脚设置为不同的中断,会有不同的中断处理函数的,不同的中断会触发并进入不同的中断处理函数
AISEED
2楼-- · 2019-03-24 20:54
< :TI_MSP430_内容页_SA7 --> 有两种方法:拿P1端口中断举例说明 比如P1.3  ,P1.4都是中断输入引脚
第一种是:#pragma vector=PORTI_VECTOR
  __interrupt  void Port1(void)
{  if(P1IFG&BIT3)       //判断是P1.3产生的中断
      {......
        .....//中断的内容
      PIIFG=0X00;
      }
  if(P1IFG&BIT4)       //判断是P1.4产生的中断
      {......
        .....//中断的内容
      PIIFG=0X00;
      }
   }

第二种方法是:
  #pragma vector=PORT1_VECTOR
__interrupt void Port1(void)
{P1FIG&=BIT3+BIT4;  //只用到这两个口,其他位中断标志全部清零,
switch(P1FIG)
    {case 0x08: vector=3;.....//填入中断内容  P1.3产生的中断
                break;
     case 0x10: vector=4;.....//填入中断内容  P1.4产生的中断
                break;
     }
}

一周热门 更多>

相关问题

    相关文章