MSP430G2553做UART怎么搞??

2019-03-24 09:10发布

我做了好几天的UART,但是总是搞不出来,就用MSP430G2553裸单片机,是不是只要把J3的跳线帽前两个竖着连起来,P1.1连接TXD,P1.2连接RXD;就可以了,还是要搭建232外围电路才能实现,仅仅靠430G2553裸单片机不能实现。。。。。。就仅仅有一个单片机,没有别的东西了,求大神帮忙指点指点。。。。
我的430代码如下:大神看下有没有什么错误。。。。
/*T-->transmit(发送)      R-->receive(接收)*/
/* P1.1-->RXD(接收端口)       P1.2-->TXD(发送端口)*/
#include<msp430g2553.h>
#define uchar unsigned char
#define uint  unsigned int
void uart_init();
void main()
{
WDTCTL=WDTHOLD+WDTPW;          //关闭看门狗
uart_init();
_BIS_SR(LPM0_bits+GIE);       //进入低功耗模式,并且等待中断
}
void uart_init()
{
UCA0CTL1|=UCSWRST;
BCSCTL1 = CALBC1_1MHZ;                    // Set DCO
DCOCTL = CALDCO_1MHZ;                     //DCO-->1MHZ
P1SEL|=BIT1+BIT2;                        //设置P1.1,P1.2,为外围模块
UCA0CTL1|=UCSSEL_2;                     // SMCLK
UCA0BR0=104;                            // 1MHz 9600
UCA0BR1=0;                              // 1MHz 9600
UCA0MCTL|=UCBRS0;   
UCA0CTL1&=~UCSWRST;                   //清除UCSRST,清除所有的复位
IE2|=UCA0RXIE;                  //开TXD,RXD的中断
}
#pragma vector=USCIAB0RX_VECTOR
__interrupt void UART0RXD()
{
while (!(IFG2&UCA0TXIFG));   // USCI_A0中的TXbuffer是否空位,当有数据的时候标志为0
UCA0TXBUF=UCA0RXBUF;   
} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
wstt
1楼-- · 2019-03-24 11:32
 精彩回答 2  元偷偷看……
风的世界
2楼-- · 2019-03-24 12:31
< :TI_MSP430_内容页_SA7 --> 直接用板载USB转串口就可以进行UART实验。先将J3那两个跳线帽按SW  UART接,下载编译好的程序,运行,再将跳线帽按HW UART接,打开电脑调试助手,然后(不用说了,你懂的),(使用板载方法,波特率上限9600,一开始我也不知道)。
SF很厉害
3楼-- · 2019-03-24 17:44
sw  UART    HW  uart,这两个是什么个意思呀,不懂???求详细说明下,最好上图呀
SF很厉害
4楼-- · 2019-03-24 22:11
 精彩回答 2  元偷偷看……
风的世界
5楼-- · 2019-03-25 03:17
SW UART 软件UART,HW UART 硬件UART。其实使用板子上的直接接成HW UART 那样就可以。那不是有个表示嘛,你拿着板子,USB那个朝上,那两个跳线帽横着插。你再试试,一定可以的
风的世界
6楼-- · 2019-03-25 03:47
有参考书书上说先接成SW,在接成HW,我发现直接接成HW也可以下载程序,调试。不过波特率最大只能设置成9600bps,另外说一下,我是用IAR。CCS不知道是不是这样

一周热门 更多>

相关问题

    相关文章