51单片机串口通信上位机接收数据丢失,怎么解决
2个回答
展开全部
数据丢失多半是因为中断造成的,当串口通讯时,系统被其他中断占用了,那么就会出现数据丢失的情况,所以为了保险,可以采取以下措施:
1、将串口中断优先级设为最高。
2、增加反馈信号,DTR和DSR两个信号可以用起来。
1、将串口中断优先级设为最高。
2、增加反馈信号,DTR和DSR两个信号可以用起来。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不知道你说的是发送丢失还是接收丢失,貌似没遇到数据丢失的问题,看了你的程序,如果是发送丢失建议你不要注释以下程序中的es=0;
和
es=1;.我前几天也遇到发送的时候没关中断数据不对的问题,希望能帮到你
if(flag==1)
//利用查询法判断是否进入了中断
{
//
es=0;//串行口中断关掉,防止产生死循环
flag=0;//清零
delay(100);
fasong(i);
//es=1;
if(i>=4){i=0;}
和
es=1;.我前几天也遇到发送的时候没关中断数据不对的问题,希望能帮到你
if(flag==1)
//利用查询法判断是否进入了中断
{
//
es=0;//串行口中断关掉,防止产生死循环
flag=0;//清零
delay(100);
fasong(i);
//es=1;
if(i>=4){i=0;}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询