QT串口助手开发3串口开发
创始人
2025-05-29 11:28:30
0

系列文章目录

QT串口助手开发3串口开发


QT串口助手开发3

  • 系列文章目录
  • 一、UI界面程序的编写
  • 二、发送框程序编写


一、UI界面程序的编写

根据上文的未解决问题:我们打开串口按钮打开后只能选择关闭串口,所以这个是循环的过程
上文链接
所以按钮对应的槽函数首先必须判断当前串口助手是否打开了助手,closed以后要把按钮的状态恢复成打开,修改mIsOpen标志位为False

在这里插入图片描述

否则执行我们写的getSerialPortConfig获取位(数据位…)成功,按钮状态是打开,并且按钮要更新为关闭(并且位的下拉框要变成灰白色不再可以调位下拉框了),如果没有获取成功则按钮状态是关闭的
在这里插入图片描述

禁止使用下拉框就成灰白色了

在这里插入图片描述

代码如下:

在这里插入图片描述

测试下信息,加个QDebug头信息

在这里插入图片描述在这里插入图片描述

ctrl + r运行测试效果

在这里插入图片描述在这里插入图片描述

我们需要打开按钮打开后才能点击发送按钮

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

其实还可以直接把mIsopen填进去这样就不用思考填true或者false

在这里插入图片描述在这里插入图片描述在这里插入图片描述
ctrl + r 运行测试效果
当你没有打开串口的时候发送按钮是灰色的(不能发送),当你打开串口的时候,发送按钮是可以发送的
在这里插入图片描述在这里插入图片描述

二、发送框程序编写

发送按钮转到槽函数,详情槽函数可以参考文章槽函数

在这里插入图片描述
在这里插入图片描述比如TeditSend函数不会用,就再帮助文档查TeditSend函数,帮助文档使用方法参考文档添加链接描述

由于这个toPlainText()这个函数是Qstring类型,所以我们需要变更下它的函数类型为char*,再帮助文档中查看Qstring函数的用法
在这里插入图片描述Qstring先转换成标准的c++string,然后再用c_str转换成char*
ctrl + r 运行测试下效果
在这里插入图片描述
同理写接受框,COM2给COM1发送数据时,这时接收框没有反应
在这里插入图片描述
接收框程序写法:
平常都是再ui转到槽函数,这个是从设计界面,如果我们连接到串口,需要用代码的方式连接
connect是连接信号和槽,信号发送者是mSerialPort,发送信号Readyread,发送给槽(先自定义下)的槽
slots槽函数
在这里插入图片描述
ALT + ENTER选择添加定义
在这里插入图片描述
在这里插入图片描述

再写槽函数里面读取串口
当串口有数据的时候,就会发送ReadyRead这个信号,槽函数就会响应,就会读取串口,然后设置到接收文本框里面

在这里插入图片描述ctrl + b编译ctrl + r测试下效果
在这里插入图片描述一直发送都是一个hhh
因为我们之前设置的槽函数,一旦有数据就会读取并且发送到接收框,这样每次发送都是会覆盖掉前面发送的,我们不想要覆盖,所以再点开帮助文档,查看texyedit函数或者直接搜索关键字append,查看到append的槽函数,槽函数依旧是函数可以直接调用
所以把setPlaintext函数变更成append函数即可
在这里插入图片描述ctrl + r 运行测试效果
在这里插入图片描述清除功能,查看帮助文档,搜索clear,可以自行添加


END

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...