为USB鼠标编写一些C代码。
更具体地写配置和信息到鼠标,如投票,灵敏度,按钮动作,颜色(光),触觉变化,OLED等。
从这篇旧文章开始,这里推荐libhid而不是libusb。
看着libhid,它似乎已经死了。最后一次参与这个项目是在2012年,那就是C++。但我发现了一些链接,其中一个应该转到hidapi。
然而,希达皮似乎也相当死气沉沉。最后一次承诺是2016年。或者说它是简单稳定的?
毕竟,使用libusb看起来更好。从一篇有15年历史的文章开始--这并不算太牵强。
的问题是我是不是遗漏了什么?libusb 是该走的路吗?
已经用libusb-1.0.0-dev做了一些快速测试
#include <libusb-1.0/libusb.h>而且效果很好--至少对于我所做的快速测试来说是这样。但是藏匿的图书馆也许会更好?
从本机包选项中,我至少有:
libhidapi-dev
libhidapi-libusb0
libhidrd0-dbg
libhidapi-hidraw0
libhidrd0
libhidrd0-dev和
libusb-0.1-4 libusbmuxd4
libusb-1.0-0 libusbmuxd-dev
libusb-1.0-0-dev libusbmuxd-tools
libusb-1.0-doc libusb-ocaml
libusbauth-configparser1 libusb-ocaml-dev
libusbauth-configparser-dev libusbprog0v5
libusb-dev libusbprog-dev
libusbguard0 libusbredirhost1
libusbhid-common libusbredirhost-dev
libusb-java libusbredirparser1
libusb-java-dbg libusbredirparser-dev
libusb-java-doc libusbtc08-1
libusb-java-lib libusbtc08-dev发布于 2019-04-11 17:50:25
用于USB设备的libusb 推荐使用希达皮。hidapi可以根据操作系统使用不同的后端,例如Windows中的hid.dll,Linux中的hidraw或libusb,所以它使用的是本机USB驱动程序。
但是,要注意的是,hidapi并没有给您提供对您发送的数据包的相同级别的控制。它比libusb级别更高,它用于请求的一些参数是固定的(例如,bRequest值)。
hidapi也是目前未维护,如果这是您关心的问题的话。
Update:截至2019年6月4日,hidapi被移动到libusb/hidapi,现在又在积极地进行维护。
就我个人而言,如果对您的项目有效,请使用hidapi,但是如果设备的协议不符合HID标准,那么您将遇到麻烦,可能需要libusb提供的控制。
https://stackoverflow.com/questions/55272593
复制相似问题