最近用Qt5重写了以前用MFC做的串口通信程序,从中提取了基础的部分,
做了一个简单的程序完成了一些功能:
串口基本的收,发数据
串口是否可用判定,串口状态与按钮状态之间联系
串口发送:字符和16进制发送的选择,回车键也为发送
串口接收:16进制的接收,按1字节显示与按1个字显示选择
串口接收数据:txt的形式保存,清除接收数据
串口自动发送
我把这个简单的通信程序和一些用到的工具上传了,有需要的朋友可以去下载。
http://download.csdn.net/detail/lovebird_27/9227893
在这里,记录一些个人觉得重要的代码
新建一个Qt项目,基类选为QWidget,类名serial
在serial.h头文件中添加
#include <QtSerialPort/QSerialPort>#include <QtSerialPort/QSerialPortInfo>
在serial.cpp中private:
Ui::serial *ui;QSerialPort *my_serialport;QByteArray requestData;
串口的接收
my_serialport= new QSerialPort(); //定义1个串口类型
connect( my_serialport,SIGNAL(readyRead()),this,SLOT(updata()));//一旦串口接收到数据,便会去执行updata()函数void serial::updata(){requestData = my_serialport->readAll();//读取数据 串口读取出来的数据类型 是QByteArray 不是QString
QString buf ;·
·
buf = ShowHex(requestData); //显示为1个字节16进制·