0

私の UART は 4800 ボー レートに設定されていますが、下に貼り付けた UART コードを使用して NMEA センテンス (GPS 評価ボード) を受信できません。個々の GPS+ターミナルと UART+ターミナルは正常に動作しています。しかし、 GPS+UART 、センテンスを受信することはできません GPSのデフォルトのbuadレートは4800です

UARTのどこが間違っているのですか???

/**
 * uart default at 4800 ACLK= 32.768KHz
 * @4800 bps
 */

  void UART_default(void){  
  P3SEL = BIT3+BIT4;                         
  UCA0CTL1 |= UCSWRST;                      
  UCA0CTL1 |= UCSSEL_1;                     
  UCA0BR0 = 0x06;                           
  UCA0BR1 = 0x00;                           
  UCA0MCTL |= UCBRS_6+UCBRF_0;              
  UCA0CTL1 &= ~UCSWRST;                     
  UCA0IE |= UCRXIE;                         
}

#pragma vector=USCI_A0_VECTOR
__interrupt void USCI_A0_ISR(void)
{
  volatile char byte;
    switch(__even_in_range(UCA0IV,4))
  {
  case 0:break;                             // Vector 0 - no interrupt
  case 2:               
    byte=  UCA0RXBUF;
    if (byte == '\r') { 
            push_char(byte);                    // At end of Data transmission
            ptr = 0;
        }
    else{                       
            push_char(byte);  
                ptr++;  
        }
    break;  
  case 4:break;                                        
  default: break;   
  }     
}
4

1 に答える 1

0

GPS を PC で USB <-> UART コンバーターに置き換えようとしましたか? これにより、MSP430 のボーレート設定と、何かを受信する機能を検証できます。

于 2012-09-14T13:44:37.823 に答える