用MSP430F149,串口助手可以收发,想单片机直接给PC发送数据,在串口助手上不显示数据,

2019-07-15 15:53发布

这个程序是本网站借用tcvsdonnnie
,谢谢!#include "msp430x14x.h"
#define uchar unsigned char
uchar DATA[]="hello recieved over!";
void main()
{
  // Stop watchdog timer to prevent time out reset
        uchar j;
        WDTCTL = WDTPW + WDTHOLD;
        //使用外部高频晶体振荡器
        BCSCTL1&=~XT2OFF;
        do{
          IFG1&=~OFIFG;
          for(j=0XFF;j>0;j--);
        }while((IFG1&OFIFG));
        BCSCTL2|=SELM_2;  
        P3DIR|=BIT4;
        P3DIR&=~BIT5;
        P3SEL|=BIT4+BIT5;
        
        ME1 |= UTXE0 + URXE0;  // 使能USART0收发
        UCTL0 |= CHAR;     // 8-bit 数据,一位停止位
        UTCTL0 |= SSEL0;           // 选择时钟,UCLK = ACLK,32768
        UBR00 = 0x03;    // 32k/9600
        UBR10 = 0x00;   //
        UMCTL0 = 0x4a;            // Modulation
        UCTL0 &= ~SWRST;    // 初始化UART0状态机,一般要设置好串口之后才复位
      
        IE1 |= URXIE0;                            // 使能接收中断
       _EINT();        
        while(1);
            
}
#pragma vector = UART0RX_VECTOR
__interrupt void UART0_RXISR(void)
{
// uchar i;
    TXBUF0=RXBUF0;//将接收到的数据发出去
    while((UTCTL0&0X01)==0);//等待数据发送完毕         
}

买的开发版,使用BLS转接线,在本网站找的程序,不知道问题出在那地方,请大神帮忙!
捕获.PNG
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
三笑TM
1楼-- · 2019-07-15 19:02
 精彩回答 2  元偷偷看……
阿颠304581
2楼-- · 2019-07-15 22:30
最终发现是TX0和RX0短接了,太马大哈了
阿颠304581
3楼-- · 2019-07-16 01:09
三笑TM 发表于 2017-3-29 17:25
换成UART1试试 把引脚改一下 我用的430F5529 T1应该是P4.4 P4.5

谢谢您,是我把管脚接错了
泉之流离
4楼-- · 2019-07-16 06:15
粗心了
阿颠304581
5楼-- · 2019-07-16 07:16
泉之流离 发表于 2017-4-8 21:52
粗心了

是的,太粗心了

一周热门 更多>