社区
通信技术
帖子详情
QT 串口数据存放在QByteArray中,如何对数据进行分组处理
weixin_41052284
2017-11-22 02:53:16
各位大神,最近用QT写一个串口通信的程序,把接收到的串口数据存在QByteArray中,格式如下
想对这样数据进行分组,每5个为一组,之后对这五个数据进行处理。请问:如何实现分组?
...全文
1189
1
打赏
收藏
QT 串口数据存放在QByteArray中,如何对数据进行分组处理
各位大神,最近用QT写一个串口通信的程序,把接收到的串口数据存在QByteArray中,格式如下 想对这样数据进行分组,每5个为一组,之后对这五个数据进行处理。请问:如何实现分组?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
阳光110
2017-11-23
打赏
举报
回复
#include <vector> using namespace std; struct tmp { unsigned int count; BYTE byte5[5]; }; vector <tmp> vectmp;
16进制带空格字符串
qt
转数组_
Qt
中
16进制
数据
的Q
ByteArray
与QString的转换
背景介绍:最近在做
Qt
串口
相关PC机软件的开发。于是涉及到很多IO的操作,而IO的接收经常会
存放
在Q
ByteArray
里面。于是Q
ByteArray
和QString之间的转换就不可避免。像这种转换,在网上已经很多了,这里我着重介绍我在实际应用
中
的两种方法,而且是转换为16进制数的方法。Q
ByteArray
to QString 的第一种方法:/***************************...
Qt
中
16进制
数据
的Q
ByteArray
与QString的转换
背景介绍: 最近在做
Qt
串口
相关PC机软件的开发。于是涉及到很多IO的操作,而IO的接收经常会
存放
在Q
ByteArray
里面。于是Q
ByteArray
和QString之间的转换就不可避免。 像这种转换,在网上已经很多了,这里我着重介绍我在实际应用
中
的两种方法,而且是转换为16进制数的方法。 Q
ByteArray
to QString 的第一种方法: /*******************
关于
QT
使用
串口
收发
数据
个人版本:5.4及以上。 【个人总结,接受正确意见,好的建议】 1.问题:接收
数据
不正确。 a).在
串口
接收
数据
接口处打印接收到的
数据
,若出现每次收到的
数据
长度与发送的
数据
长度不一致,则说明
串口
接收的
数据
不完整,解决方法可自定义
数据
缓存池专门接收
串口
收到的
数据
,然后
进行
统一
处理
。 b).若接收的长度无误,最后解析的
数据
不正确,记得查看
串口
是否需要做网络字节序转换(大小端问题),一般针对2个字节(如unsigned short)类型,或者4个字节(如int类型,unsigned int 类型)。 2
Qt
- C++ - Q
ByteArray
与int、float、vector互转
Q
ByteArray
的转换一般在
串口
通信
中
常用,将int、float、double转换为4个字节的数组(如255 -> [0,0,0,255],本文章一律用10进制表示),或将4个字节的数组转换为int、float、double(如[0,0,0,255] -> 255)。
Qt
接收
串口
字节
数据
并存储
我们需要将字符串
中
的每一个字节剥离出来,想办法将其依次存入无符号字节数组当
中
。首先以16进制读取为int类型(占用4字节),将其地址赋值为(unsignedchar*)类型的pf,指针类型决定指针长度,赋值完成之后便可刚好取到checkval
数据
中
四字节的首字节,也就是我们的真正的
数据
字节,再将他们依次读入无符号字节数组当
中
去
进行
存储。我们每次取出一个字节,按协议内容依次循环取出所有字节
数据
并拼接为字符串。拿到
数据
之后,我们仅需强制转换,便可以得到这些字节所对应的浮点数。...
通信技术
4,356
社区成员
28,926
社区内容
发帖
与我相关
我的任务
通信技术
通信技术相关讨论
复制链接
扫一扫
分享
社区描述
通信技术相关讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章