51单片机串口通信程序 只需要接收缓冲区收到一串字符串 但是字符串一

51单片机串口通信程序只需要接收缓冲区收到一串字符串但是字符串一直发送无法停止求解决程序如下voidSendData(unsignedcharx){while(busy)... 51单片机串口通信程序 只需要接收缓冲区收到一串字符串 但是字符串一直发送 无法停止求解决 程序如下
void SendData(unsigned char x)

{

while(busy);

busy = 1;

SBUF = x;

}

void SendString(unsigned char *string)

{

while(*string)

SendData(*string++);

}

void Uart_Isr() interrupt 4 using 1

{

unsigned char i = 0;

if(RI)

{

RI = 0;

if('\n' != SBUF)

receivebuff[i++] = SBUF;

else

{

receivebuff[i] = '\0';

i = 0;

SendString(receivebuff);

}

}

if(TI)

{

TI = 0;

busy = 0;

}

}
展开
 我来答
做而论道
高能答主

2017-05-03 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
只需要接收缓冲区收到一串字符串 但是字符串一直发送...
--题目,看不明白。
--你收到一串就不用再收了,你管他发不发干嘛?
更多追问追答
追问
关键是我收到不止一串 会不断的收到 单片机会不断发送给pc端 没有停止
追答
收到了,确认无误后,应该给对方一个回信。
对方,就不发送了。
-------------------
双方通信,要制定一个协议,双方都要遵守。
数据的头,是什么字节;
数据的字节数,是多少;
数据的末位,是什么校验方法;
。。。。。。
你的协议是怎么制定的?
词妞律静年2c
2017-05-02 · TA获得超过573个赞
知道答主
回答量:878
采纳率:0%
帮助的人:97.3万
展开全部
51单片机串口通信程序设计有什么要求。
追问
就是想让单片机向电脑发送一串字符串 就发送一遍 但是我的问题出现在一直循环发送这串字符串
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式