简体   繁体   中英

Using the Msp430fr5969 to send strings over Tx

I am trying to send data from the Msp430fr5969 Launchpad to the rn-52-ek so it can pass the data along through bluetooth.

#include <msp430.h> 

void uartSend(unsigned char *pucData, unsigned char ucLength)
{
  while(ucLength>0)
  {

    // Wait for TX buffer to be ready for new data
    while(!(UCA1IFG & UCTXIFG));

    // Push data to TX buffer
    UCA1TXBUF = *pucData;

    // Update variables
    ucLength--;
    pucData++;
  }



}
void initUART()
{

     /* Place UCA0 in Reset to be configured */
      UCA0CTL1 = UCSWRST;

      //Set BRCLK = SMCLK
      UCA0CTL1 |= UCSSEL_2;

      //Values found using table for 16Mhz and 115200 baudrate
      UCA0BR0=8;
      UCA0BR1=0;
      UCA0MCTLW = 0xF7 << 8;
      UCA0MCTLW |= 10 << 4;
      UCA0MCTLW |= UCOS16;

      //UCA0 out of reset
      UCA0CTL1 &= ~UCSWRST;
}

int main(void) {
      // disable watchdog timer
      //------------------------
      WDTCTL = WDTPW + WDTHOLD;               // Stop WDT

      initUART();


      unsigned char sendString[] = "Banana";
      unsigned char length=6;
      while(1)
      {


          uartSend(sendString,length);

      }

      return 0;
}

Nothing is happening when I run the above code, not even reading anything on the multimeter. What am I missing?

I know there are some bad practices, I just want to get it working and I'll add the interrupt based sending later.

您应该将端口2.5设置为UART的Tx

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM