新人问个关于串口的低级问题。。

2019-03-24 08:22发布

我刚开始接触单片机,用的msp430f5529的launchpad。我现在想用PC和开发板串口连接,板子用来烤程序的那个usb接口可以达到串口连接的作用嘛,还是要短接啥的。。。不能的话是不是只能用个usb转串口?
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
qwerghf
2019-03-26 22:27
本帖最后由 qwerghf 于 2017-9-18 23:32 编辑
  1. #include <msp430.h>

  2. int main(void)
  3. {
  4.   WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT

  5.   P4SEL |= BIT4+BIT5;                       // P4.4,5 = USCI_A1 TXD/RXD
  6.   UCA1CTL1 |= UCSWRST;                      // **Put state machine in reset**
  7.   UCA1CTL1 |= UCSSEL_2;                     // SMCLK
  8.   UCA1BR0 = 9;                              // 1MHz 115200 (see User's Guide)
  9.   UCA1BR1 = 0;                              // 1MHz 115200
  10.   UCA1MCTL |= UCBRS_1 + UCBRF_0;            // Modulation UCBRSx=1, UCBRFx=0
  11.   UCA1CTL1 &= ~UCSWRST;                     // **Initialize USCI state machine**
  12.   UCA1IE |= UCRXIE;                         // Enable USCI_A1 RX interrupt

  13.   __bis_SR_register(LPM0_bits + GIE);       // Enter LPM0, interrupts enabled
  14.   __no_operation();                         // For debugger
  15. }

  16. // Echo back RXed character, confirm TX buffer is ready first
  17. #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
  18. #pragma vector=USCI_A1_VECTOR
  19. __interrupt void USCI_A1_ISR(void)
  20. #elif defined(__GNUC__)
  21. void __attribute__ ((interrupt(USCI_A1_VECTOR))) USCI_A1_ISR (void)
  22. #else
  23. #error Compiler not supported!
  24. #endif
  25. {
  26.   switch(__even_in_range(UCA1IV,4))
  27.   {
  28.   case 0:break;                             // Vector 0 - no interrupt
  29.   case 2:                                   // Vector 2 - RXIFG
  30.     while (!(UCA1IFG&UCTXIFG));             // USCI_A1 TX buffer ready?
  31.     UCA1TXBUF = UCA1RXBUF;                  // TX -> RXed character
  32.     break;
  33.   case 4:break;                             // Vector 4 - TXIFG
  34.   default: break;
  35.   }
  36. }
复制代码以上代码我拿官方程序修改,拿板子测试通过,你直接可以用
2 (2).jpg
2 (1).jpg

一周热门 更多>

相关问题

    相关文章