第三方类下载

https://sourceforge.net/projects/qextserialport/files/



目录介绍



搭建工程

拷贝qextserialbase.cpp、qextserialbase.h、win_qextserialport.cpp和win_qextserialport.h到自己的工程下

//添加头文件
#include "win_qextserialport.h"
//添加串口定义
Win_QextSerialPort *Com;
//添加槽函数
private slots:
void readCom(); //当接收到数据,会有信号
void on_pushButton_clicked(); //发送按钮,产生信号

初始化

//定义串口对象,指定串口名和查询模式,这里使用事件驱动EventDriven
Com = new Win_QextSerialPort("COM2", QextSerialBase::EventDriven); //以读写方式打开串口
if(Com->open(QIODevice::ReadWrite) == false)
{
QMessageBox::warning(this, tr("warning"), tr("COM2 open failed."));
} Com->setBaudRate(BAUD9600);
Com->setDataBits(DATA_8);
Com->setParity(PAR_NONE);
Com->setStopBits(STOP_1);
Com->setFlowControl(FLOW_OFF); connect(Com,SIGNAL(readyRead()),this,SLOT(readCom()));
connect(button,SIGNAL(clicked()),this,SLOT(on_pushButton_clicked()));

void MainWindow::readCom()
{
qDebug() << "read: "<< Com->bytesAvailable() << "bytes"; //读取串口缓冲区的所有数据给临时变量data
QByteArray data = Com->readAll(); //将串口的数据显示在窗口的文本浏览器中
ui->textBrowser->insertPlainText(data);
}

void MainWindow::on_pushButton_clicked() //发送数据
{
//以ASCII码形式将数据写入串口
Com->write(ui->lineEdit->text().toAscii()); qDebug() << "write: "<< Com->bytesToWrite() << "bytes";
}

实际效果

经测试,在Win10运行,串口数据异常,还未找到原因

建议使用:https://blog.csdn.net/zhangxuechao_/article/details/81154296

qt 操作串口的更多相关文章

  1. qt 操作串口 QSerialPort

    准备工作 *.pro中加入 QT += serialport 初始化 void MainWindow::initPort() { //读取串口信息 foreach (const QSerialPort ...

  2. Qt编写串口通信程序全程图文解说

    (说明:我们的编程环境是windows xp下,在Qt Creator中进行,假设在Linux下或直接用源代码编写,程序稍有不同,请自己修改.) 在Qt中并没有特定的串口控制类,如今大部分人使用的是第 ...

  3. 转:Qt编写串口通信程序全程图文讲解

    转载:http://blog.csdn.net/yafeilinux/article/details/4717706  作者:yafeilinux (说明:我们的编程环境是windows xp下,在Q ...

  4. Qt编写串口通信程序全程图文讲解 .

    在Qt中并没有特定的串口控制类,现在大部分人使用的是第三方写的qextserialport类,我们这里也是使用的该类.我们可以去 http://sourceforge.net/projects/qex ...

  5. 【转】Qt编写串口通信程序全程图文讲解

    本文章原创于www.yafeilinux.com 转载请注明出处. (说明:我们的编程环境是windows xp下,在Qt Creator中进行,如果在Linux下或直接用源码编写,程序稍有不同,请自 ...

  6. QT 操作数据库

    整理一下 QT 操作数据库的一些要点,以备以后的查询学习(主要是操作 mysql ). 首先,要查询相关的驱动是否已经装好了,可以用以下的程序进行验证: #include <QtCore/QCo ...

  7. C#操作串口总结

    Technorati 标签: C#,SerialPort,ReadTo,ReadTimeout        最近几天一直在调一个要长时间连续不断的操作串口,并且是多线程运行,不允许中断的服务.后来服 ...

  8. 树莓派中QT实现串口通讯

    树莓派中QT实现串口通讯 开发平台为QT 此博客QT使用的为WiringPi驱动 我使用的串口调试助手为 cutecom 先简单说一些开发过程中需要注意的问题 Linux 下设备为 tty ,对应在 ...

  9. MSComm控件与Win32 API操作串口有何区别?

    MSComm控件与Win32 API操作串口有何区别? [问题点数:50分,结帖人shell_shell]   收藏帖子 回复 我是一个小兵,在战场上拼命!   结帖率 83.33% 我以前用MSCo ...

随机推荐

  1. 201871010109-胡欢欢《面向对象程序设计(java)》第6-7周学习总结

    实验六 继承定义与使用 实验时间 2019-9-29 第一部分:理论部分. 1.继承:已有类来构建新类的一种机制.档定义了一个新类继承另一个类时,这个新类就继承了这个类的方法和域,同时在新类中添加新的 ...

  2. RSA介绍

    RSA加密算法是一种非对称加密算法.在公开密钥加密和电子商业中RSA被广泛使用. 公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公 ...

  3. OSS文档1

    简介:     OSS 对象存储   用于单独存储文件视频音频类等文件   上传方式: 普通上传: 单文件普通上传 分片上传: 文件切片后上传,完成后组合,适合大文件,弱网络 追加上传: 流文件上传, ...

  4. <DFS & BFS> 130 127

    130. Surrounded Regions BFS: 把所有边界上的O先换成A(标记),再深度遍历周围的点. 最后把O换成X(表示不符合要求),所有的A换回O class Solution { p ...

  5. [C/C++]大小端字节序转换程序

    计算机数据存储有两种字节优先顺序:高位字节优先(称为大端模式)和低位字节优先(称为小端模式). 大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿 ...

  6. [LeetCode] 721. Accounts Merge 账户合并

    Given a list accounts, each element accounts[i] is a list of strings, where the first element accoun ...

  7. 关于Adobe Premiere Pro视音频不同步的解决方法

    在Potplayer和系统播放器都正常 但Pr里面就是音画不同步 原因是Pr识别错误,让音频比视频快了,这时要将视频后拉一点就ok了

  8. Visual Studio 调试系列12 远程调试部署在远程计算机IIS上的ASP.NET应用程序

    系列目录     [已更新最新开发文章,点击查看详细] 要调试已部署到IIS的ASP.NET应用程序,请在部署应用程序的计算机上安装并运行远程工具,然后从Visual Studio附加到正在运行的应用 ...

  9. MySQL基本数据类型和约束方式

    常用数据类型 1.mysql中的基本数据类型 整型.浮点型.字符类型.日期类型.枚举和集合. 2.常用的约束条件 PRIMARY KEY.UNIPUE KEY.NOT NULL.FOREIGN KEY ...

  10. Scala词法文法解析器 (二)分析C++类的声明

    最近一直在学习Scala语言,偶然发现其Parser模块功能强大,乃为BNF而设计.啥是BNF,读大学的时候在课本上见过,那时候只觉得这个东西太深奥.没想到所有的计算机语言都是基于BNF而定义的一套规 ...