设为首页 加入收藏

TOP

QT串口接收十六进制
2014-11-24 11:15:15 来源: 作者: 【 】 浏览:0
Tags:串口 接收 十六进制

前段时间写了个“QT串口发送十六进制”,为了对应,现在来个下部剧集。


我要接收的数据比较长,“01 03 24 01 19 …………00 D5 F6”中间省略一大截,为将这些数据接收到一个字符串中,参考QT论坛里的文章,总结如下:


没有贴出完整的函数,不过这部分就已经可以解决了。 strHex中就是存储的接收十六进制数据。


想要做什么处理,就根据实际情况来吧。


当然可以参考下面的代码


//读取串口
void MySerial::readMyCom()
{
QByteArray temp;
if(myCom->bytesAvailable() >= 8)
{
temp = myCom->readAll(); //读串口缓冲区数据
}
QDataStream out(&temp,QIODevice::ReadWrite); //将字节数组读入
while(!out.atEnd())
{
qint8 outChar = 0;
out>>outChar; //每字节填充一次,直到结束
QString str = QString("%1").arg(outChar&0xFF,2,16,QLatin1Char('0'));
//十六进制的转换
recBrowser->insertPlainText(str);
}
recBrowser->insertPlainText(tr("\n"));
}


那就在这里结束吧。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android音频视频开发 下一篇Linux 下监测指定路径下指定时间..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)
·使用华为开发者空间 (2025-12-27 04:19:24)
·Getting Started wit (2025-12-27 03:49:24)
·Ubuntu 上最好用的中 (2025-12-27 03:49:20)