4350|5

151

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

对于一段教程的程式觉得有问题! [复制链接]

下面是一段简单的完整通讯程序,实现功能:将接受的数据原样送回。

但是觉得南航教程中以下这段程序是不是少了一个子程,就是用于接收PC机发给MSP430的数据,并将接收到的数据放至发送缓存器?

 

#include <msp430x44x.h>


void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // 停止看门狗
UTCTL0 = SSEL0; // UCLK = ACLK,选择时钟来源
UBR00 = 0x03; // 32k/9600 - 3.41 波特率寄存器低字节
UBR10 = 0x00; // 32k/9600 波特率寄存器高字节
UMCTL0 = 0x51; // 由于波特率计算有余数,填写波特率调整寄存器
UCTL0 = CHAR; // 数据格式为8 位数据
ME1 |= UTXE0 + URXE0; // 使能串口TXD 与RXD
IE1 |= URXIE0; // 让串口接收到数据后能产生中断
P2SEL |= 0x30; // 定义 P2.4,P2.5 为串口功能引脚
P2DIR |= 0x10; // 串口发送数据端口为输出,接收数据端口为输入
_EINT(); // 整个系统使能中断(开总中断)
_BIS_SR(LPM3_bits); // 初始化完毕,进入睡眠状态,主程序完毕
}
interrupt[UART0RX_VECTOR] void usart0_rx (void)
{
while ((IFG1 & UTXIFG0) == 0); // 当发送缓存为空时
TXBUF0 = RXBUF0; //发送数据到串口
}

 

最新回复

没有问题 IE1 |= URXIE0; 看这句,自己去掉试试,你可以拷到板子上试试,能不能运行,加上后有什么区别, [ 本帖最后由 aahellaa 于 2011-9-1 10:42 编辑 ]  详情 回复 发表于 2011-9-1 08:49
 
点赞 关注

回复
举报

5015

帖子

12

TA的资源

裸片初长成(初级)

沙发
 
可以在main里面加一句
while ((IFG1 & UTXIFG0) == 0); // 当发送缓存为空时
TXBUF0 = RXBUF0; //发送数据到串口
然后把接收和发生连在一起就自发自收了。
2DIR |= 0x10;不见得可以保证P2.5为输入
加句2DIR &= ~0x20;比较可靠
 
 

回复

151

帖子

0

TA的资源

纯净的硅(初级)

板凳
 
P2DIR |= 0x10,是什么原因会造成P2.5不是输入呢?
P2DIR &= ~0x20 还是 P2DIR &= ~0x10,我看到有人P2DIR &= ~0x10的。
后面这条指令最后赋什么值给P2啊?
 
 
 

回复

60

帖子

0

TA的资源

纯净的硅(初级)

4
 

回复 板凳 零晨 的帖子

举个例子,如果之前P2.5已经被置1了,那么 或 上 00010000 之后,0|1=1,并不能使P2.5复位,这就是版主说的不能够保证P2.5复位
P2DIR &= ~0x10的语句是个位操作,只是把BIT4位复位
同理 P2DIR &= ~0x20是把BIT5位复位。其它位没有任何变化

赞赏

1

查看全部赞赏

 
 
 

回复

151

帖子

0

TA的资源

纯净的硅(初级)

5
 
啊,谢啦,呵呵,初学者,总有很多不理解啊!
还好有诸位大哥解惑啊!
谢啦!
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(高级)

6
 
没有问题
IE1 |= URXIE0;
看这句,自己去掉试试,你可以拷到板子上试试,能不能运行,加上后有什么区别,

[ 本帖最后由 aahellaa 于 2011-9-1 10:42 编辑 ]
 
 
 

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

随便看看
查找数据手册?

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
快速回复 返回顶部 返回列表