标题:
Qt制作简易串口通信
[打印本页]
作者:
zjy09
时间:
2017-11-6 17:39
标题:
Qt制作简易串口通信
在Qt上制作一个串口通信的界面,可以与手机通信,也可以通过蓝牙与单片机通信。
0.png
(7.55 KB, 下载次数: 23)
下载附件
2017-11-6 18:08 上传
源程序如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtCore/QDebug>
#include <QtSerialPort/QSerialPort>
#include <QtSerialPort/QSerialPortInfo>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//枚举所有串口
foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts())
{
qDebug() << "Name : " << info.portName();
qDebug() << "Description : " << info.description();
qDebug() << "Manufacturer: " << info.manufacturer();
// Example use QSerialPort
QSerialPort serial;
serial.setPort(info);
if (serial.open(QIODevice::ReadWrite))
{
ui->comboBox->addItem(info.portName());
serial.close();
}
}
my_serialport= new QSerialPort;
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_cmOpen_clicked()
{
my_serialport->setPortName(ui->comboBox->currentText());
my_serialport->open(QIODevice::ReadWrite);
my_serialport->setBaudRate(ui->lineEdit->text().toInt());
my_serialport->setDataBits(QSerialPort::Data8);
my_serialport->setParity(QSerialPort::NoParity);
my_serialport->setStopBits(QSerialPort::OneStop);
my_serialport->setFlowControl(QSerialPort::NoFlowControl);
connect(my_serialport,SIGNAL(readyRead()),this,SLOT(readCom()));
}
void MainWindow::on_pushButton_2_clicked()
{
my_serialport->close();
}
void MainWindow::on_pushButton_clicked()
{
my_serialport->write(ui->lineEdit_2->text().toLatin1());
}
void MainWindow::readCom()
{
QByteArray temp = my_serialport->readAll();
ui->textBrowser->append(temp);
}
复制代码
所有资料51hei提供下载:
serial.zip
(7.65 KB, 下载次数: 63)
2017-11-6 17:38 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
suzhuorui
时间:
2019-8-15 16:00
运行这个程序 是不是需要别的什么东西呢 比如说单片机什么的
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1