【TI FAQ】+MSP430F5438中断函数编写方法?

2019-08-02 15:32发布

MSP430F5438中断函数编写方法?USCI0为例,说明该两种不同方法。1.switch-case方法[cpp] view plaincopy#pragma vector=USCI_A0_VECTOR  __interrupt void USCI_A0_ISR(void)  {      switch(__even_in_range(UCA0IV,4))      {      case 0:              break;      case 2:                       // 接收中断              // do something here              break;      case 4:                       // 发送中断              // do something here              break;                      default:               break;      }  }   2.查询标志为方法[cpp] view plaincopy#pragma vector=USCI_A0_VECTOR  __interrupt void USCI_A0_ISR(void)  {    // 接收中断    if( ( UCA0IFG & UCRXIFG ) != 0 )    {          }    // 发送中断    if( ( UCA0IFG & UCTXIFG ) != 0 )    {      }  }   TI的官方例程都是用switch-case方法,而本人则更喜欢第二种——查询标志位。总之两种方法的最终效果都一样。
0条回答

一周热门 更多>