前言
最近开始学习一些USB上位机编写,因为之前了解过一些QT操作,所以选择使用QT来做一下USB;但苦于QT本身是没有USB的库,正好下位机也是个hid usb的设备,这里就选择了hidapi这个库。
一、HIDAPI是什么?
HIDAPI 是一个 USB 和蓝牙的 hid 类设备在 Windows、Linux、FreeBSD 和 Mac 的 C 语言通用库,使用 HIDAPI可以在 Windows、Linux、FreeBSD 和 Mac 平台进行 USB 和蓝牙的 hid 类设备通信,非常简单实用。
二、添加HIDAPI库
1.下载HIDAPI相关库文件
文件连接可以去github查看:https://github.com/libusb/hidapi/tree/hidapi-0.12.0
转到到Releases
下载hidapi-win.zip
下载之后解压得到以下3个文件,分别是64位、32位、头文件:
2.添加库
创建好QT工程,首先编译一遍。
hidapi使用的是MinGW编译器
,如果使用64位就把x64里的hidapi.dll
和hidapi.lib
放入QT工程目录下,32位就把x32里的hidapi.dll
和hidapi.lib
放进去;
最后再把include
里的头文件放进去:
进入QT工程右键选择添加库
->外部库
选择hidpai.lib
,这里选择动态链接,由于不需要linux和mac平台,我就把这俩点掉了,也不需要debug版本所以取消勾选:
下一步点击完成:
会看到pro文件里出现了路径:
之后再把hidapi.h添加到头文件就ok了
3.编译测试
构建代码,运行一下,未报错,添加库成功!
总结
hidapi相对libusb来说较为简单,并且只针对hid设备进行读写,局限性还是比较大,不过作为简单的hid usb设备操作已经足够了。