xiao辣鸡 发表于 2017-7-16 13:27

本人初学单片机,希望各位大神帮忙看一下程序

#include"msp430g2553.h"

void main(void)
{
WDTCTL = WDTPW + WDTHOLD;               // Stop WDT
   
BCSCTL1 = CALBC1_1MHZ;                  // Set DCO
DCOCTL = CALDCO_1MHZ;
   
P1SEL = BIT1 + BIT2 ;                     // P1.1 = RXD, P1.2=TXD
P1SEL2 = BIT1 + BIT2 ;                     // P1.1 = RXD, P1.2=TXD
   
UCA0CTL1 |= UCSSEL_2;                     // SMCLK
UCA0BR0 = 104;                            // 1MHz 9600
UCA0BR1 = 0;                              // 1MHz 9600
   
UCA0MCTL = UCBRS0;                        // Modulation UCBRSx = 1
UCA0CTL1 &= ~UCSWRST;                     // **Initialize USCI state machine**
IE2 |= UCA0RXIE;                        // Enable USCI_A0 RX interrupt

__bis_SR_register(LPM0_bits + GIE);       // Enter LPM0, interrupts enabled
}

//Echo back RXed character, confirm TX buffer is ready first
#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void)
{
while (!(IFG2&UCA0TXIFG));                // 发送中断标志检测,每次发送后都要检测
                                          //直到发送完成,才可发送下个字节的数据
UCA0TXBUF = UCA0RXBUF;                  // TX -> RXed character
}

想利用串口调试助手接收数据,然后利用中断发送数据。可是串口助手始终无法接收到数据

dirtwillfly 发表于 2017-7-16 15:35

你的开发板和串口是怎么连接的?

xiao辣鸡 发表于 2017-7-16 17:08

dirtwillfly 发表于 2017-7-16 15:35
你的开发板和串口是怎么连接的?

我是直接通过usb连接的开发板

dirtwillfly 发表于 2017-7-16 17:10

串口调试助手的配置和你的程序是一样的吗?
建议 先用开发板发送某个字符,看串口调试助手能收到吗。如果成功,再测试从串口调试助手接收字符并发送

fengfeng的恒 发表于 2017-7-17 09:59

主函数末尾加个while(1);

xiao辣鸡 发表于 2017-7-17 21:29

dirtwillfly 发表于 2017-7-16 17:10
串口调试助手的配置和你的程序是一样的吗?
建议 先用开发板发送某个字符,看串口调试助手能收到吗。如果成 ...

不知道是不是我代码问题 好像发送不出去,调试助手始终不能收到

xiao辣鸡 发表于 2017-7-17 21:35

fengfeng的恒 发表于 2017-7-17 09:59
主函数末尾加个while(1);

还是不行加了还是无法回显数据

dirtwillfly 发表于 2017-7-17 21:44

xiao辣** 发表于 2017-7-17 21:29
不知道是不是我代码问题 好像发送不出去,调试助手始终不能收到

先用官网例程试试

xiao辣鸡 发表于 2017-7-18 07:35

本帖最后由 xiao辣** 于 2017-7-18 08:04 编辑

大神 ,我用例程还是跑不了,还是不能回显

zwsam 发表于 2024-3-8 09:10

先用demo试下
页: [1]
查看完整版本: 本人初学单片机,希望各位大神帮忙看一下程序