找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

关于单片机与Python上位机通信问题

查看数: 2013 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-5-7 23:35

正文摘要:

上位机用的PYTHON网上抄的程序,用于将G指令传递给单片机 目前存在的问题如下: 1、单片机有时会在一行指令中少收一两个字符(小概率),为什么会丢字符?这个没查到原因,求指教 2、单片机返回给PC端用于交互的 ...

回复

ID:889094 发表于 2021-5-8 21:33
我好像找到问题原因了,主要是在发送串口数据中,仔细学习了芯片手册,发送例程里面有一个busy还帮助获取串口发送状态,加进去后就没再出现卡在半路的情况。
也没再出现接收丢失数据现象,看来接收和发送两个还是相关联的?还是我程序本来就乱。。。。。
总结:
1、看例程要仔细,重点地方要做笔记
2、自己写代码一定要结构清楚,注释清楚
ID:889094 发表于 2021-5-8 11:02
daemondong 发表于 2021-5-8 10:54
你读SBUF写的不太规范,可能会导致多读一个字符。改成下面试试
   recbuf[compos][recpos]=SBUF;//数据存 ...

谢谢回复,确实是问题,我修改一下
ID:827243 发表于 2021-5-8 10:54
你读SBUF写的不太规范,可能会导致多读一个字符。改成下面试试
   recbuf[compos][recpos]=SBUF;//数据存入缓存
   recpos++;
   if(recbuf[compos][recpos-1]=='\n')        //如果收到的是\n,说明接收完一行

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表