Qt下串口连续发送命令怎么实现

Qt下串口连续发送命令怎么实现,第1张

你设置一个slot比做好如 send ()发送你的命令,再者个函数中,设置一个QTimer::singleShot(10, this, SLOT(send()))重新召唤你这个发送的函数,这样就能一直发送了。当然你斗档还需要加纯销铅条件,让他停止什么的。

一. 完善数据接收功能

主要有以下几点需要完善:

需要接收中文隐和

打开串口的pushbotton,点击打开后需要燃携铅改为关闭串口功能

1. 完善接收中文功能

这一块我在帮助手册上是找不到解决办法,只能在网上看有没有解决办法了, 参考了网上这位博主的https://blog.csdn.net/ouening/article/details/89469468,接收函数修改为

/*显示串口数据函数*/

void MainWindow::displayData()

{

QByteArray rx_data

rx_data = this->serialPortUsing.readAll()

QString str = QString::fromLocal8Bit(rx_data)

qDebug() <<str

rx_data.clear()

}

就可以愉快的显示中文了

2. 完善打开串口和关闭串口功能

做这个功能的思路是先定义一个bool类型的打开与否标志位,点击了打开串口就把这个标志位翻转,再次点击时 在槽函数里面判断这个标志位,做相应的打开或者关闭 *** 作。皮好

mainwindow.cpp代码

#include "mainwindow.h"

#include "ui_mainwindow.h"

#include <QPushButton>

#include <QComboBox>

#include <QSerialPort>

#include <QSerialPortInfo>

#include <QDebug>

MainWindow::MainWindow(QWidget *parent) :

QMainWindow(parent),

ui(new Ui::MainWindow)

{

ui->setupUi(this)

/*显示波特率*/

this->BaudList <<"9600" <<"19200" <<"115200"

ui->baudComboBox->addItems(this->BaudLis


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12247080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存