QtUsb安装与简单使用

724 阅读2分钟

(ps.笔者主要做上位机开发,涉及硬件、嵌入式方面,各边专业词汇可能不准确)

1.背景介绍

最近有个项目进行迭代,嵌入式那边说我们升级一下,之前的485串口通信有问题,这次我们用usb2.0进行通信,于是笔者开始寻找Qt里怎么进行usb通信。发现有个开源库QtUsb,那就先试试它了。

2.安装QtUsb

QtUsb项目地址: fpoussin/QtUsb: A cross-platform USB Module for Qt. (github.com)
安装环境: win10,Qt5.15.2 MSVC2019 64bit
可以直接从正式安装部分看起

试错部分

刚开始笔者按照README里面介绍去Releases · fpoussin/QtUsb (github.com)中下载了源码(Source code(zip)). 1724404844244.png 之后在Qt Creator进行构建,构建之后也不行(其实看不太懂README里的安装指南)。安装失败

正式安装

然后笔者发现Releases · fpoussin/QtUsb (github.com)中也有编译好的文件,结合之前调用一些三方库的经验,选择下载了 v0.7.0-qt5.15-usb-msvc-dynamic-x64.7z 。 (git上不去下载不了的可以去 文章末尾 提供的链接下载) 1724405434970.jpg 解压后进入 v0.7.0-qt5.15-usb-msvc-dynamic-x64\Qt\5.15\msvc2019_64\ 目录下看到:

image.png

下文将路径 v0.7.0-qt5.15-usb-msvc-dynamic-x64\Qt\5.15\msvc2019_64\ 简称为 'A\'

笔者的QT安装路径是 D:\Qt5.15.2\5.15.2\msvc2019_64\ 如下图 ,下文简称为 'B\'

image.png

  1. A\include 目录下的 QtUsb 文件夹copy到 B\include 目录下。

image.png

  1. A\lib 目录下的 两个lib和两个prl 文件copy到 B\lib 目录下。

image.png

  1. A\bin 目录下的 两个dll和两个pdb 文件copy到 B\bin 目录下。

image.png

  1. A\mkspecs\modules 目录下的 两个dll和两个pdb 文件copy到 B\mkspecs\modules 目录下。

image.png

测试

  1. pro文件中加入QT += usb
  2. 新建一个项目,引入#include <QUsb>
  3. 运行看看有没有报错

3.实现与Usb通信

  1. fpoussin/QtUsb: A cross-platform USB Module for Qt. (github.com) 中给出了一些使用的例子,在examples文件中,完成第2章的安装后可以在Qt Creator,选中examples文件中的examples.pro进行编译运行。
  2. 笔者按照examples自己也实现了一个可以通过usb通信接收/发送消息的简单demo,预览如下图: image.png 代码放到了这里:qt_usb_com_example: 使用QtUsb进行usb通信的一个简单实现,可以接受/发送消息,向usb设备

4.下载备份

git上不去的可以在这下载 官方examples 和 v0.7.0-qt5.15-usb-msvc-dynamic-x64 , 提取码:GkDg