知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。
我要使用的功能比较简单,主要包含扫描串口、打开串口、发送数据、接收数据、暂停按钮、停止按钮,因此接下里将围绕这几个功能依次更新。
我的工程项目名字叫 “GUI”。
首先展示下已经创建后的项目截图,主要包括 GUI.ui
、GUI.h
、GUI.cpp
这三个文件。
之后的每个功能,也都将围绕这三个地方进行添加和修改。
1. 获取串口名字
1.1 文件 GUI.ui
UI 界面中添加了一个 Combo Box 组合框,等下将扫描出来的串口号,添加到这个组合框中。
1.2 文件 GUI.h
在 GUI.h
文件中,添加需要用到的头文件,函数 getPortNameList()
,变量名。
1.3 文件 GUI.cpp
在 GUI.cpp
文件中,编写函数 getPortNameList()
的具体功能。
同时,别忘了将获取到的端口号变量 m_serialPortName
,添加到 comboBoxPortNumber
这个组合框中。
运行后,最终的效果如下:
潜在 Bug:LN2019
在这过程中,可能会遇到一个 LN2019 的 bug,可以参考这个教程解决:【Visual Studio】报错 LNK2019,使用 C++ 语言,配合 Qt 开发串口通信界面。
2. 配置串口连接
这一步添加一个开始按钮 Push Button 和一个停止按钮 Push Button,当开始按钮按下时,我们让串口接通,当停止按钮按下时,我们关闭串口。
注意,在串口接通时,是需要选择配置一些串口传输时的必需信息的,比如波特率,数据位等。
但这我要做的项目中,用户需要操作的越少越好。因此,我这里都将所有信息内置到项目中,不再显露出来。
为了进一步观察状态,我们再添加一个文本浏览器 Text Browser,用来显示串口是否打开的状态。
2.1 文件 GUI.ui
2.2 文件 GUI.h
2.3 文件 GUI.cpp
最终运行效果如下:文章来源:https://www.toymoban.com/news/detail-507624.html
潜在Bug:按下按钮无反应
如果你在编写按钮的事件函数时,没有使用和我一样的名字,那么当你按下按钮时,你编写的事件触发函数不会得到响应。这是因为你没有建立函数的按钮的信号连接。详情请参考这篇文章:【Visual Studio】开发 Qt 时右键没有自动添加 slots 槽的功能,使用 C++ 语言,配合 Qt 开发串口通信界面。
3. 配置串口连接
这一步主要用来接收串口发送过来的信息并显示出来。我们添加一个文本浏览器 Text Browser,用来显示串口接收到的内容。
3.1 文件 GUI.ui
3.2 文件 GUI.h
3.3 文件 GUI.cpp
最终运行效果如下:
文章来源地址https://www.toymoban.com/news/detail-507624.html
Ref
- Visual Studio如何使用Qt开发桌面软件?
- Qt 实现多线程的串口通信
到了这里,关于【Visual Studio】使用 C++ 语言,配合 Qt,开发了一个串口通信界面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!