2回答

0收藏

Lauchpad 的UART串口无法进入中断,求帮助。。。

其他 其他 3855 人阅读 | 2 人回复 | 2013-05-19

#include  "msp430g2553.h"

void main(void)
{
  
  WDTCTL = WDTPW + WDTHOLD;              // Stop WDT
   DCOCTL = 0;
  BCSCTL1 = CALBC1_1MHZ;                    // Set DCO
  DCOCTL = CALDCO_1MHZ;
  UCA0CTL1|=UCSWRST;
  P1SEL|=BIT1+BIT2 ;                     // P1.1 = RXD, P1.2=TXD
  P1SEL2|=BIT1+BIT2;
  P1DIR|=BIT2;
   
  UCA0CTL1|= UCSSEL_2;                     // SMCLK
  UCA0BR0 =8;                              // 1MHz 115200
  UCA0BR1 =0;                              // 1MHz 115200
  UCA0MCTL=UCBRS2+UCBRS0;               // Modulation UCBRSx = 5

  UCA0CTL1&=~UCSWRST;                     // **Initialize USCI state machine**
  IE2|=UCA0RXIE;                          // Enable USCI_A0 RX interrupt
  __bis_SR_register(GIE);       //  interrupts enabled
   
  while(1);
   
}
// Echo back RXed character, confirm TX buffer is ready first
#pragma vector = USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void)
{
  while (!(IFG2&UCA0TXIFG));                // USCI_A0 TX buffer ready?
  UCA0TXBUF = UCA0RXBUF;                    // TX -> RXed character
}

程序收不到电脑发过来的数据,不晓得原因。还有当复位时430会向电脑发一个十六进制的00。。。求大家帮帮忙。。。

分享到:
回复

使用道具 举报

回答|共 2 个

倒序浏览

沙发

chenbingjy

发表于 2013-5-25 21:10:48 | 只看该作者

你可以先写一个向电脑发数据的测试程序,看看硬件是不是好的。
板凳

xiand_ni

发表于 2013-5-26 09:31:21 | 只看该作者

chenbingjy 发表于 2013-5-25 21:10
你可以先写一个向电脑发数据的测试程序,看看硬件是不是好的。

谢谢。。问题解决了。
没人在乎过程,只在乎结果。
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条