概述
libusb是一个C库,它提供了通用的访问USB设备。 它的目的是供开发人员使用方便的生产与USB通信硬件的应用程序。
可移植的:
使用一个跨平台API,它提供了访问USB设备在Linux上,OS X Windows,Android,OpenBSD等等。
用户模式:
不需要特权或高程应用程序与设备进行通信。
version-agnostic:
所有版本的USB协议,从1.0到3.0(最新),都受支持。
支持哪些平台?
Linux、mac OS X、Windows Windows CE,Android,OpenBSD / NetBSD,俳句。
如何开始?
如果您使用的是Linux,那么您的发行版已经包括libusb,你可能只需要参考libusb头在你的来源。
其他平台,或者如果你想使用最新的,建议您从源代码编译。 请检查下载菜单。
如果你愿意,你也可以直接访问源github。
一旦你获得了进入图书馆及其标题,请检查libusb API或者是libusb样品。
libusb - 1.0 API参考
介绍
libusb是一个开源库,允许你从用户空间与USB设备通信。 更多信息,请参阅libusb主页。
该文档的目的是应用程序开发人员希望与USB外围设备通信的软件。 回顾这个文档后,反馈和问题可以发送到libusb-devel邮件列表。
本文档的知识主要针对如何操作USB设备从软件的角度来看(描述符、配置、接口、端点、控制/体积/中断/同步转移,等等)。 完整的信息可以查看USB 3.0规范这是免费下载。 你可以通过搜索网络找到更详细的介绍。
应用程序编程接口(API)
转到应用程序编程接口页面,里面有libusb函数的完整列表。
库特性
- 所有传输类型支持(控制/体积/中断/同步)
- 2传输接口:
- 同步(简单)
- 异步(更复杂,但更强大的)
- 线程安全的(尽管异步接口通常意味着你不需要线程)
- 轻量级和精益API
- 兼容libusb通过libusb -兼容0.1 - 0.1转换层
- 热插拔支持(在一些平台上)。 看到设备热插拔事件通知。