QT5串口编写简单的上位机
来源:互联网 发布:苹果cms忘记登录密码 编辑:程序博客网 时间:2024/05/16 05:50
本文转自:http://blog.csdn.net/u014695839/article/details/50611549
最近在学习嵌入式,而上位机又是一个不可缺少的工具,于是就开始接触QT,学习编写上位机。刚开始的时候什么都不懂,发现http://www.devbean.net/2012/08/qt-study-road-2-catelog/这里有比较好的入门教程。学习了前面部分(我只看到了事件...),对QT有了大概的了解后,就开始在网上寻找上位机的编写方法。通过好几天的学习,终于写出了一个用于串口通信的上位机。下面开始介绍串口类的使用。
首先,QT5是自带QSerialPort这个类的,使用时需要在pro文件里面添加一行:
QT += serialport
然后直接引用头文件就可以使用了。QSerialPort:提供访问串口的功能
QSerialPortInfo:提供系统中存在的串口的信息
接下来需要创建一个QSerialPort的对象,对串口的名称、波特率、数据位、校验位、停止位等参数进行设置,然后才进行串口读写操作。大概总结了一下,设置、读、写的过程。
一、设置(举例):
这里设置了串口名为name,打开串口并设置为可读可写,波特率为BaudRate,数据位为8位,没有奇偶校验位,停止位为1位,没有流控制。设置完这些就能进行读写操作了。作为一名新手,发现遇到不懂得可以在QtCreator里面可以选择关键字,按F1打开文档看类、函数等数据的手册。
二、读取数据
当串口收到数据并且接收完毕后,会发出一个readyRead()的信号,因此只需要编写一个槽函数Read_Data(),设置信号槽,并在槽函数中使用readAll()把收到的数据读到buf中。
使用write函数便可以把字符串data一个个字节发送出去。
使用串口就只需以上步骤,使用完后只需要执行
就可以关闭串口了。
代码如下:
工程文件在这里可以下载:
版本一:已经被下载很多次了,但因为评论里的小伙伴提出了一些小问题,已经修改更新并重新上传到版本二了
http://download.csdn.net/detail/u014695839/9423213
版本二:删除mythread.h和mythread.c以及代码里面多余的#include "mythread.h",把Read_Data()槽函数里的if(buf!=NULL)改成了if(!buf.isEmpty())
http://download.csdn.net/detail/u014695839/9763670
以上程序若有问题,大家及时提醒,我定会马上更正!
希望大家在学习过程中相互交流。如果文章有错误,欢迎大家指出!- QT5串口编写简单的上位机
- QT5串口编写简单的上位机
- QT学习——QT5串口编写的上位机
- VC++编写简单串口上位机程序
- Qt5上位机串口助手程序
- VC++ .net 串口操作(简单的上位机串口操作)
- VS2013+MFC串口控件的简单上位机
- 上位机简单串口类,VC串口类, MFC串口
- QT5串口编写
- C#做一个简单的进行串口通信的上位机
- C#做一个简单的进行串口通信的上位机
- Matlab串口上位机
- 上位机串口通信
- VS2008基于对话框的MFC上位机串口通信(C++实现)简单例程
- VS2008基于对话框的MFC上位机串口通信(C++实现)简单例程
- MFC/基于对话框的MFC上位机串口通信(C++实现)简单例程
- QT上位机编写
- 一个串口上位机程序
- Java中堆内存和栈内存详解
- Python :k-means聚类算法对数据进行分类
- mysql 冷备份binlog
- 条款 05
- LRM-00112: multiple values not allowed for parameter 'log'
- QT5串口编写简单的上位机
- Spring-jedis配置
- Keil(MDK-ARM)系列教程(八)_在线调试(Ⅰ)
- 国外程序员整理的机器学习资源大全
- 《Android源码设计模式解析与实战》读书笔记(十四)——迭代器模式
- 接口测试工具postman的环境搭建与使用1
- [李景山php] syn flood 攻击防御方案
- Neutron总结-openvswitch+vxlan网络
- HDU 4864 Task(贪心) (机器完成目标任务, 两个权值, 小范围打表)