51单片机串口通信,数据丢失了怎么解决啊!!望各位大神帮我改下

51单片机串口通信,数据丢失了怎么解决啊!!望各位大神帮我改下,第1张

不知道你说的是发送丢失还是接收丢失,貌似没遇到数据丢失的问题,看了你的程序,如果是发送丢失建议你不要注释以下程序中的ES=0; 和 ES=1;我前几天也遇到发送的时候没关中断数据不对的问题,希望能帮到你
if(flag==1) //利用查询法判断是否进入了中断
{
// ES=0;//串行口中断关掉,防止产生死循环
flag=0;//清零
delay(100);
FaSong(i);
//ES=1;
if(i>=4){i=0;}

SBUF其实是有两个,只是名字一样而已,一个是只读当作接收缓冲SBUF,一个是只写当作发送缓冲SBUF,收到数据就把数据放到接收缓冲SBUF,读一次后自动清除接收缓冲SBUF,发送数据就把数据放到发送缓冲SBUF,发送完自动清除发送缓冲SBUF


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13412911.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-31
下一篇 2023-07-31

发表评论

登录后才能评论

评论列表(0条)

保存