关于MSP430G2553串口的一个问题

2019-07-15 15:35发布

本帖最后由 elecfanqxx 于 2015-8-30 12:15 编辑

大家知道MSP430G2553串口的最高波特率可设为多少?我正在用一个蓝牙模块,需要38400bps波特率,但用G2553和串口调试工具sscom测试时,9600bps以上的就不行了,正常收发不了。不知道是什么问题,软件配置还是硬件限制?下面是我的程序,设的是14400bps,用的是Launchpad开发板。希望大家指点^_^
#include "msp430.h"
int main( void )
{
  WDTCTL = WDTPW + WDTHOLD;
  DCOCTL = 0;                              
  BCSCTL1 = CALBC1_1MHZ;                     // 设置 DCO为1M
  DCOCTL = CALDCO_1MHZ;            
  //控制灯亮灭
  P1DIR|=BIT6;
  P1OUT&=~BIT6;
  //配置串口
  P1SEL = BIT1 + BIT2 ;                     // 配置引脚
  P1SEL2 = BIT1 + BIT2 ;
  UCA0CTL1 |= UCSSEL_2;                     // 模块时钟选择为SMCLK
  UCA0BR0 = 69;                             // 设置波特率14400bps
  UCA0BR1 = 0;                           
  UCA0MCTL = 0;                             // 调整波特率
  UCA0CTL1 &= ~UCSWRST;                     // **使能系统复位**
  IE2 |= UCA0RXIE;

  __bis_SR_register(LPM0_bits + GIE);       // 进入LPM0并使能全局中断
}
#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void)
{
  while (!(IFG2&UCA0TXIFG));                // 检测发送是否准备好
  UCA0TXBUF = UCA0RXBUF+1;                  // 将接收数据+1发送给主机
  P1OUT^=BIT6;                              //指示灯
}

ssss.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。