关于msp430程序问题#pragma vector=USCIAB0RX_VECTOR__interrupt void

1个回答

  • 先说前两句:

    while (!(IFG2&UCA0TXIFG)); // USCI_A0 TX buffer ready?

    UCA0TXBUF = UCA0RXBUF; // TX -> RXed character

    第一句是判断串口的发送是否正在工作,因为要使用发送功能,所以得判断发送是否忙碌,只有在不忙碌的时候才可以启用发送.这一句就是判断发送是否在工作,如果是在工作,那么一直等待到不工作为止.第二句是把接收寄存器的内容直接给到发送寄存器,目的是把接收到的数据直接通过串口再发送出去.

    后两句是定时器相关的,TA1CCTL0&=~CCIFG;

    TA1CTL=MC_0;

    第一句是把定时器的中断标志位软件清零,第二句是停止定时器的计数.