为什么MSP430串口是怎么接收和发送数据的发送30,接收到是144

温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(2040)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'MSP430串口收发程序(转载)',
blogAbstract:'\r\n\r\n\r\n\r\n\r\n\r\n/******************************************************\r\n程序功能:接收PC机十六进制数据后回传至PC机\r\n数据格式:十六进制\r\n帧头:FD\r\n帧尾: FE\r\n*******************************************************/\r\n#include &msp430x14x.h&\r\nunsigned char RecBuf[255]; //接收数据缓存\r\nunsigned char *SD&&&& //指向要发送的数据',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:8,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}MSP430串口收发程序
11:33:47来源: eefocus 关键字:&&
/******************************************************
程序功能:接收PC机十六进制数据后回传至PC机
数据格式:十六进制
*******************************************************/
unsigned char RecBuf[255]; //接收数据缓存
unsigned char *SD&&&& //指向要发送的数据
unsigned char R&&&&& //接收数据计数
unsigned char T&&&&& //发送数据计数
unsigned char SendL&&&& //发送数据长度
/*************************************************
函数名称:ConfigUart0
功&&& 能:配置UART0,使用SMCLK,N.8.1, 9600
&&&&&&&&& 无校验,8个数据位,1个停止位,波特率9600
参&&& 数:无
返回值 :无
**************************************************/
void ConfigUart0()
&&& P3SEL |= 0x30;&&&&&&&&&&&&&&&&&&&&&&&&&&& // 选择P3.4和P3.5做UART通信端口
&&& ME1 |= UTXE0 + URXE0;&&&&&&&&&&&&&&&&&&&& // 使能USART0的发送和接受
&&& UCTL0 |= CHAR;&&&&&&&&&&&&&&&&&&&&&&&&&&& // 选择8位字符
&&& UTCTL0 |= SSEL1;&&&&&&&&&&&&&&&&&&&&&&&&& // UCLK = SMCLK
&&& UBR00 = 0xD0;&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 波特率9600
&&& UBR10 = 0x00;&&&&&&&&&&&&&&&&&&&&&&&&&&&& //
&&& UMCTL0 = 0x40;&&&&&&&&&&&&&&&&&&&&&&&&&&& // Modulation
&&& UCTL0 &= ~SWRST;&&&&&&&&&&&&&&&&&&&&&&&&& // 初始化UART状态机
&&& IE1 |= URXIE0 + UTXIE0;&&&&&&&&&&&&&&&&&& // 使能USART0的收发中断&&&
/********************主函数********************/
void main(void)
&&& WDTCTL = WDTPW + WDTHOLD;&&&& // 关闭看门狗
&&& BCSCTL1 &= ~XT2OFF;&&&&&&&&&& //使TX2有效,TX2上电默认是关闭的
&&&&& IFG1 &= ~OFIFG;&&&&&&&&&&&& //清除振荡器失效标志
&&&&& for(i=0i>0;i--);&&&&&&& //延时,待稳定
&&& while((IFG1 & OFIFG)!=0);&&&& //若振荡器失效标志有效
&&& BCSCTL2 |= SELM1;&&&&&&&&&&&& //使MCLK=XT2
&&& BCSCTL2 |= SELS+DIVS1;&&&&&&& //SMCLK=XT2,4分频,即2MHZ
&&& BoardConfig(0xb8);&&&&&&&&&&& // 关闭数码管、流水灯和电平转换
&&& ConfigUart0();&&&&&&&&&&&&&&& //配置UART0
&&& _EINT();&&&&&&&&&&&&&&&&&&&&& //打开全局中断
&&& while(1)
&&&&&&& LPM1;
/*******************************************
函数名称:UART0_RXISR
功&&& 能:UART0的接收中断服务函数,在这里唤醒
&&&&&&&&& CPU,使它退出低功耗模式
参&&& 数:无
返回值 :无
********************************************/
#pragma vector = UART0RX_VECTOR
__interrupt void UART0_RXISR(void)
&&& RecBuf[Rindex++] = RXBUF0;
&&& if(RecBuf[Rindex-1]==0xfe) //接收完毕
&&&&&&& SendLen = R
&&&&&&& Rindex=0;
&&&&&&& if(RecBuf[0]==0xfd) //帧头正确
&&&&&&&&&&& LPM1_EXIT;
&&&&&&&&&&& SDat = RecB
&&&&&&&&&&& IFG1 |= UTXIFG0; // 设置中断标志,进入发送中断程序
/*******************************************
函数名称:UART0_TXISR
功&&& 能:UART0的发送中断服务函数
参&&& 数:无
返回值 :无
********************************************/
#pragma vector = UART0TX_VECTOR
__interrupt void UART0_TXISR(void)
&&&&& if(Tindex < SendLen)
&&&&&&&&& TXBUF0 = *(SDat+Tindex);
&&&&&&&&& Tindex++;
&&&&& else
&&&&&&&&& Tindex=0;
&&&&&&&&& //LPM1;
使用于F149
关键字:&&
编辑:什么鱼
引用地址:
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
关注eeworld公众号快捷获取更多信息
关注eeworld服务号享受更多官方福利
网友正在学习IC视频
EEWORLD网友正在观看&&视频
EEWORLD网友正在观看&&视频
EEWORLD网友正在观看&&视频
EEWORLD网友正在观看&&视频
EEWORLD网友正在观看&&视频
相关关键词
热门关键词
最新视频课程
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
热门资源推荐
频道白皮书
何立民专栏
北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。msp430串口1收发程序_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&10W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
msp430串口1收发程序
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢MSP430 串口发送始终停留在串口发送缓存是否空闲的判断语句上。_百度知道
MSP430 串口发送始终停留在串口发送缓存是否空闲的判断语句上。
while (!(IFG1 & UTXIFG0));
无法往下跑。
我有更好的答案
可能是串口初始化程序不对,串口未激活给用个初始化程序看看void usart0_inttialization(){
P3SEL=0xf0;
P3DIR=0X00;
U0CTL&=~SWRST;
U0CTL=CHAR;
//无校验,8位数据
U0BR0=0X18;
//波特率19200
U0BR1=0x00;
//;不用调整
U0TCTL=SSEL1+SSEL0;
P3DIR=RXD+TXD;
P3SEL=RXD+TXD;
ME1|=UTXE0+URXE0;
}//发送一个字节函数void transmit_a_bit(char sdata){
IFG1&=~UTXIFG0;
while(IFG1&UTXIFG0==0);}
采纳率:60%
是不是你的串口一直在发送数据?
为您推荐:
其他类似问题
msp430的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 STM32串口中断接收和中断发送 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信