百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
H

hidapi

> 编程语言
开源

一个简单的库,用于在 Linux、Mac 和 Windows 上与 USB 和蓝牙 HID 设备进行通信。

2.5K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

一个简单的库,用于在 Linux、Mac 和 Windows 上与 USB 和蓝牙 HID 设备进行通信。

HIDAPI 是一个多平台库,允许应用程序在 Windows、Linux、FreeBSD 和 Mac OS X 上与 USB 和蓝牙 HID 类设备进行接口。HIDAPI 可以作为共享库 (.so 或 .dll) 构建,也可以通过添加一个单个源文件(每个平台一个)和一个单个头文件,直接嵌入到目标应用程序中。HIDAPI 具有四个后端:

  • Windows(使用 hid.dll)
  • Linux/hidraw(使用内核的 hidraw 驱动)
  • Linux/libusb(使用 libusb-1.0)
  • FreeBSD(使用 libusb-1.0)
  • Mac(使用 IOHidManager)

在 Linux 上,可以使用 hidraw 或 libusb 后端。它们各有优缺点,支持的功能略有不同。 Linux/hidraw (linux/hid.c): 此后端使用 Linux 内核中的 hidraw 接口。虽然此后端支持 USB 和蓝牙,但在 2.6.39 之前的内核中存在一些限制,包括无法发送或接收功能报告。此外,它只能与具有与之关联的 hidraw 节点的设备通信。键盘、鼠标和一些其他被列入黑名单的设备不支持使用 hidraw 节点。幸运的是,对于大多数使用 hidraw 的情况,这并不是问题。

Linux/FreeBSD/libusb (libusb/hid.c): 此后端使用 libusb-1.0 直接与 USB 设备通信。当然,此后端不会与蓝牙设备兼容。HIDAPI 还附带了一个测试 GUI。该测试 GUI 是跨平台的,使用 Fox Toolkit (http://www.fox-toolkit.org)。它将在 HIDAPI 支持的每个平台上构建。由于它依赖于第三方库,因此构建它是可选的,但建议这样做,因为在调试硬件时非常有用。

API 的外观如何? ============================= API 提供了最常用的 HID 功能,包括发送和接收输入、输出和功能报告。 与一个经过大量修改的 Microchip USB 通用 HID 示例程序进行通信的示例程序如下所示(为了简化,已删除错误检查):

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言