在线情况
楼主
  • 头像
  • 级别
    • 积分4
    • 经验17
    • 文章2
    • 注册2015-04-14
    【USART】使用TI提供程序,发现串口返回数据多一个无效字节
    [P]代码如下:通过P2口的小灯发现输入数据是正确的,但是串口返回数据是错误的(有时回复2个字节)。[/P][P] [/P][P]#include<msp430x14x.h>[/P][P]
    int main(void)
    {
      WDTCTL = WDTPW + WDTHOLD;                 // 关闭看门狗
      P2DIR = 0xFF;P2OUT = 0xFF;
     
      P3SEL |= 0x30;                            // 选择P3.4和P3.5做UART通信端口
      ME1 |= UTXE0 + URXE0;                     // 使能USART0的发送和接受
      UCTL0 |= CHAR + SWRST;                            // 选择8位字符
      UTCTL0 |= SSEL0;                          // UCLK = ACLK
      UBR00 = 0x03;                             // 波特率9600
      UBR10 = 0x00;                             //
      UMCTL0 = 0x4A;                            // Modulation
      UCTL0 &= ~SWRST;                          // 初始化UART状态机
      IE1 |= URXIE0;                            // 使能USART0的接收中断  
     
      while(1)
      {
        _EINT();
        LPM1;
        while(!(IFG1 & UTXIFG0));
        P2OUT = ~RXBUF0;
        TXBUF0 = RXBUF0;
      }
    }
    /***********
    *******串口中断接收服务程序
    ************/[/P][P]#pragma vector=UART0RX_VECTOR
    __interrupt void usart0_rx(void)
    {
      LPM1_EXIT;
    }
    [/P]
    微控网感谢您的参与
    Powered by LeadBBS 9.2 .
    Page created in 0.1719 seconds with 7 queries.