ExpOS技术社区

 找回密码
 立即注册

快捷登录

QQ登录

只需一步,快速开始

查看: 1690|回复: 4

串口收的数据不全是什么原因?

[复制链接]

1

主题

2

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2020-6-17 16:05:45 | 显示全部楼层 |阅读模式
我用串口1作痛通讯串口,当我一次只传1包数的时候能正确解析处理显示,但是,当我同时传8包数据时,只有一包数(偶尔是两包)被解析,从打印日志来看,其他数据好像收都没有收到是什么情况?
回复

使用道具 举报

11

主题

68

帖子

661

积分

超级版主

Rank: 8Rank: 8

积分
661
发表于 2020-6-18 01:59:41 | 显示全部楼层
一包数据是多少字节?ExpOS的串口缓存时4K字节,如果溢出会在日志里面看到提示。
回复

使用道具 举报

1

主题

2

帖子

11

积分

新手上路

Rank: 1

积分
11
 楼主| 发表于 2020-6-18 09:32:39 | 显示全部楼层
w100 发表于 2020-6-18 01:59
一包数据是多少字节?ExpOS的串口缓存时4K字节,如果溢出会在日志里面看到提示。 ...

很确定没有溢出,测试的时候一包数据就十几个字节而已
回复

使用道具 举报

71

主题

104

帖子

793

积分

版主

Rank: 7Rank: 7Rank: 7

积分
793
发表于 2020-6-19 13:42:09 | 显示全部楼层
本帖最后由 hixon 于 2020-6-19 13:50 编辑
Deason 发表于 2020-6-18 09:32
很确定没有溢出,测试的时候一包数据就十几个字节而已

是软件上的bug, 之前没有考虑到一次接收多帧数据的情况,已经修复,随后会发布 1.3.3新版本。
验证:
假如串口com0,使能了头 AA BB 和尾 CC DD, 当串口一次性收到两帧数据,如 AA BB 11 22 CC DD AA BB 33 44 CC DD, 正确的行为应该是onReceive会调用两次,在onReceive方法里面调用device.com0.read()读取到的数据分别为 11 22 和 33 44。

回复

使用道具 举报

11

主题

68

帖子

661

积分

超级版主

Rank: 8Rank: 8

积分
661
发表于 2020-6-20 03:37:55 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|物一世(北京)科技有限公司 ( 京ICP备20025895 )

GMT+8, 2022-5-25 12:04 , Processed in 0.608657 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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