MSP430 F5529串口和蓝牙使用

2019-03-24 10:13发布

P4.4,P4.5接的是蓝牙的TXD和RXD。
程序运行后,手机蓝牙串口发送数据,代码调试是总是不进中断,应该没有收到。不知为何?
代码如下:
#include <msp430.h>

int main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  P4SEL = BIT4+BIT5;                        // P3.4,5 = USCI_A0 TXD/RXD
  UCA1CTL1 |= UCSWRST;                      // **Put state machine in reset**
  UCA1CTL1 |= UCSSEL_2;                     // SMCLK
  UCA1BR0 = 6;                              // 1MHz 9600 (see User's Guide)
  UCA1BR1 = 0;                              // 1MHz 9600
  UCA1MCTL = UCBRS_0 + UCBRF_13 + UCOS16;   // Modln UCBRSx=0, UCBRFx=0,
                                            // over sampling
  UCA1CTL1 &= ~UCSWRST;                     // **Initialize USCI state machine**
  UCA1IE |= UCRXIE;                         // Enable USCI_A0 RX interrupt

  //UCA1TXBUF = 0x00;

  __bis_SR_register(LPM0_bits + GIE);       // Enter LPM0, interrupts enabled
  __no_operation();                         // For debugger
}

// Echo back RXed character, confirm TX buffer is ready first
#pragma vector=USCI_A1_VECTOR
__interrupt void USCI_A1_ISR(void)
{
  switch(__even_in_range(UCA1IV,4))
  {
  case 0:break;                             // Vector 0 - no interrupt
  case 2:                                   // Vector 2 - RXIFG
    while (!(UCA1IFG&UCTXIFG));             // USCI_A0 TX buffer ready?
    UCA1TXBUF = UCA1RXBUF;                  // TX -> RXed character
    break;
  case 4:break;                             // Vector 4 - TXIFG
  default: break;
  }
}

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
wendywang
1楼-- · 2019-03-24 16:43
 精彩回答 2  元偷偷看……
wendywang
2楼-- · 2019-03-24 21:40
< :TI_MSP430_内容页_SA7 --> 解决了,口接反了。蓝牙的TX应该接单片机的RX
kemasz
3楼-- · 2019-03-25 00:00
过来看看~~~~~~
gw140624
4楼-- · 2019-03-25 03:40
 精彩回答 2  元偷偷看……

一周热门 更多>

相关问题

    相关文章