msp430f149通过蓝牙HC-05与手机通…

         前面一篇 实现蓝牙HC-05、06与单片机的连接及与手机通信的总结中详细介绍了蓝牙与STC系列MCU的连接与配置,这次将msp430f149通过UART1与蓝牙HC-05连接,并实现与手机通信作简单总结。
通信效果:发送一段字码,蓝牙接收到后自动返回。
      msp430f149通过蓝牙HC-05与手机通信 msp430f149通过蓝牙HC-05与手机通…_第1张图片
        msp430f149是一款比较常用的16位单片机,拥有两个串口模块,UART0(RXD:P11,TXD:P22)和UART1(RXD:P37,TXD:P36)。通常UART0较为常用,可用作BSL下载,或用作串口(蓝牙)通信。最近试了下UART1,觉得将他用于蓝牙通信非常合适。
1、端口连接
        端口连接依然是差分连接,如下图:
msp430f149通过蓝牙HC-05与手机通…_第2张图片
2、HC-05基本配置
         这里不详细说明,可查阅前一篇。
3、串口通信程序
#include      // 代码已调试 可直接使用
void main(void)
{
    WDTCTL = WDTPW +WDTHOLD;    // Stop WDT
    P3SEL |= 0xC0;              // P3.6,7 = USART1 TXD/RXD
    ME2 |= UTXE1 + URXE1;       // EnableUSART1 TXD/RXD
    UCTL1 |= CHAR;              // 8-bitcharacter
    UTCTL1 |= SSEL0;            // UCLK = ACLK (串口发送寄存器选择辅助时钟)
    UBR01 = 0x03;               //32k/9600 - 3.41  (UBR即波特率控制寄存器)
    UBR11 = 0x00;               //
    UMCTL1 = 0x4A;              // Modulation 波率调制
    UCTL1 &= ~SWRST;            // Initialize USART statemachine
    IE2 |= URXIE1;              // EnableUSART1 RX interrupt
    _BIS_SR(LPM3_bits +GIE);    // Enter LPM3 w/interrupt 
}
#pragma vector=USART1RX_VECTOR  // 串口读取中断
__interrupt void usart1_rx (void)
{
   while (!(IFG2 &UTXIFG1));    // USART1 TXbuffer ready? 
   TXBUF1 = RXBUF1;             // RXBUF1to TXBUF1
}

4、UART1与蓝牙连接实现与手机通信
 正确连接HC-05与msp430后,载入程序,用 “蓝牙串口调试助手”发送数据后即可看到图1效果。
 总结意在通过UART1与HC-05连接,实现msp430f149与手机的基本通信。如有错误,诚望留言指正或[email protected]

你可能感兴趣的:(TI,MSP430)