7748|18

39

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

MSP430G2553做UART怎么搞?? [复制链接]

我做了好几天的UART,但是总是搞不出来,就用MSP430G2553裸单片机,是不是只要把J3的跳线帽前两个竖着连起来,P1.1连接TXD,P1.2连接RXD;就可以了,还是要搭建232外围电路才能实现,仅仅靠430G2553裸单片机不能实现。。。。。。就仅仅有一个单片机,没有别的东西了,求大神帮忙指点指点。。。。
我的430代码如下:大神看下有没有什么错误。。。。
/*T-->transmit(发送)      R-->receive(接收)*/
/* P1.1-->RXD(接收端口)       P1.2-->TXD(发送端口)*/
#include
#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;   
}

2553.jpg (17.36 KB, 下载次数: 2)

2553.jpg

最新回复

楼主这个问题解决了没  详情 回复 发表于 2016-7-14 10:09
 
点赞 关注

回复
举报

5015

帖子

12

TA的资源

裸片初长成(初级)

沙发
 
有个简单的办法做UART的实验,买一个USB转串口的模块,比如CP2102的模块,不到10块钱的样子,就可以实现PC到MSP430的串行通信。PC上用串口调试助手可以发送或者查看接收到数据。
 
个人签名《MCU工程师炼成记》作者之一
 

回复

54

帖子

0

TA的资源

一粒金砂(高级)

板凳
 
直接用板载USB转串口就可以进行UART实验。先将J3那两个跳线帽按SW  UART接,下载编译好的程序,运行,再将跳线帽按HW UART接,打开电脑调试助手,然后(不用说了,你懂的),(使用板载方法,波特率上限9600,一开始我也不知道)。

点评

按照你说的怎么弄不成功呀。。。要不加个QQ聊,我再把设置图片给你让你看看。  详情 回复 发表于 2013-11-25 11:27
sw UART HW uart,这两个是什么个意思呀,不懂???求详细说明下,最好上图呀  详情 回复 发表于 2013-11-25 10:47
 
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

4
 

回复 板凳风的世界 的帖子

sw  UART    HW  uart,这两个是什么个意思呀,不懂???求详细说明下,最好上图呀

点评

SW UART 软件UART,HW UART 硬件UART。其实使用板子上的直接接成HW UART 那样就可以。那不是有个表示嘛,你拿着板子,USB那个朝上,那两个跳线帽横着插。你再试试,一定可以的  详情 回复 发表于 2013-11-27 10:21
 
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

5
 

回复 板凳风的世界 的帖子

按照你说的怎么弄不成功呀。。。要不加个QQ聊,我再把设置图片给你让你看看。

点评

:) 有参考书书上说先接成SW,在接成HW,我发现直接接成HW也可以下载程序,调试。不过波特率最大只能设置成9600bps,另外说一下,我是用IAR。CCS不知道是不是这样  详情 回复 发表于 2013-11-27 10:24
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(高级)

6
 

回复 4楼SF很厉害 的帖子

SW UART 软件UART,HW UART 硬件UART。其实使用板子上的直接接成HW UART 那样就可以。那不是有个表示嘛,你拿着板子,USB那个朝上,那两个跳线帽横着插。你再试试,一定可以的

点评

:) 其实我不喜欢说横啊竖的,看怎么拿板子了。 J3跳线帽那,2553芯片上方有SW UART 和HW UART 标识,边上有接插方式,你按HW UART 左方那个标识接就可以了,另外保证程序没问题,串口助手中COM口、波特率都要选对。  详情 回复 发表于 2013-11-27 10:35
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(高级)

7
 

回复 5楼SF很厉害 的帖子

有参考书书上说先接成SW,在接成HW,我发现直接接成HW也可以下载程序,调试。不过波特率最大只能设置成9600bps,另外说一下,我是用IAR。CCS不知道是不是这样
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(高级)

8
 

回复 6楼风的世界 的帖子

其实我不喜欢说横啊竖的,看怎么拿板子了。 J3跳线帽那,2553芯片上方有SW UART 和HW UART 标识,边上有接插方式,你按HW UART 左方那个标识接就可以了,另外保证程序没问题,串口助手中COM口、波特率都要选对。
    就说这么多了,说多了

点评

你好!我最近也在用USB转串口的方式获得测量数据,但是我向直接把数据通过UART,通过430 launchpad开发板上烧录程序,直接将测量数据通过nokia5110显示出来,但源程序不解,可否帮忙解决。谢谢!  详情 回复 发表于 2016-5-28 19:53
按照你说的,我明白了HW和SW,但是还是没有成功,难道是我代码的问题,还得研究研究。。。。  详情 回复 发表于 2013-11-28 19:06
 
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

9
 

回复 8楼风的世界 的帖子

按照你说的,我明白了HW和SW,但是还是没有成功,难道是我代码的问题,还得研究研究。。。。
 
 
 

回复

1702

帖子

4

TA的资源

纯净的硅(初级)

10
 
显示串口被占用,已经竖着插了
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

11
 
单片机UART输出的是TTL电平,usb转232 接头是不能够辨别TTL电平,需要接232外围电路,这样电脑串口程序才能接收码值
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

12
 
加一句 P1SEL2|=BIT1+BIT2; 试试
 
 
 

回复

35

帖子

1

TA的资源

一粒金砂(中级)

13
 
是不是你的波特率设置错了啊,1M Hz/9600=104(十进制),是不是要把它转换为十六进制啊,你把他改成68(十六进制)试一下。还有,如果改成12M Hz的似乎可以整除,就不要那句调节余数的代码了
 
 
 

回复

35

帖子

1

TA的资源

一粒金砂(中级)

14
 
刚才遗漏了,这样改 UCA0BR0=ox68;   这样看看可不可以,之前就是在实验室发现发送不出来东西,然后别人告诉我是没有设置好,改了就好了,楼主试试/
 
 
 

回复

578

帖子

0

TA的资源

纯净的硅(初级)

15
 
要不要给你一个我个人测试好的程序给你?
 
个人签名刻苦学习,共同进步
 
 

回复

35

帖子

1

TA的资源

一粒金砂(中级)

16
 
我之前说的你试试,但是我确实看到了和你那句话一模一样的代码,等于104或许可以,总之你试试呗,学习嘛!
 
 
 

回复

578

帖子

0

TA的资源

纯净的硅(初级)

17
 
这个程序看着就有些问题,首先用于串口功能的IO并没有正确的进行配置,根本无法输出数据,其次既然是已经使用查询发送,就可以不用打开接收和发送的中断使能
 
个人签名刻苦学习,共同进步
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

18
 
风的世界 发表于 2013-11-27 10:35
其实我不喜欢说横啊竖的,看怎么拿板子了。 J3跳线帽那,2553芯片上方有SW UART 和HW UART 标识,边上有 ...

你好!我最近也在用USB转串口的方式获得测量数据,但是我向直接把数据通过UART,通过430 launchpad开发板上烧录程序,直接将测量数据通过nokia5110显示出来,但源程序不解,可否帮忙解决。谢谢!
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

19
 
SF很厉害 发表于 2013-11-28 19:06
按照你说的,我明白了HW和SW,但是还是没有成功,难道是我代码的问题,还得研究研究。。。。

楼主这个问题解决了没
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表