概述

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传输接口:
    1. 同步(简单)
    2. 异步(更复杂,但更强大的)
  • 线程安全的(尽管异步接口通常意味着你不需要线程)
  • 轻量级和精益API
  • 兼容libusb通过libusb -兼容0.1 - 0.1转换层
  • 热插拔支持(在一些平台上)。 看到设备热插拔事件通知。

libusb简介的更多相关文章

  1. libusb-win32简介~

    libusb-win32简介 libusb-win32 is a port of the USB library libusb (http://sf.net/projects/libusb/) to ...

  2. 基于libhid/libusb进行开发

    操作环境:ubuntu,基于libhid/libusb进行开发   libusb介绍: libusb 设计了一系列的外部API 为应用程序所调用,通过这些API应用程序可以操作硬件,从libusb的源 ...

  3. ASP.NET Core 1.1 简介

    ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...

  4. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  5. Cassandra简介

    在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...

  6. REST简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  7. Microservice架构模式简介

    在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...

  8. const,static,extern 简介

    const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...

  9. HTTPS简介

    一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...

随机推荐

  1. iOS证书快要过期怎么办?

    说法一: 1.先revoke你的Certificate,重新生成一个新的. 2.Edit一下你的证书,选择新的Certificate. 3.下载覆盖之前的证书,就可以了. 这个帐号发布的产品不会受到影 ...

  2. asp.net请求流程

    http://developer.51cto.com/art/200902/109441.htm http://www.cnblogs.com/couhujia/archive/2010/04/21/ ...

  3. VitamioBundle-master

    1. 下载资源 (1) 核心插件 VitamioBundle 下载地址:https://github.com/yixia/VitamioBundle (2) 官方示例 VitamioDemo 下载地址 ...

  4. POJSorting It All Out (拓扑)

    题目链接. 题目大意: 给定一定的数量的小于关系: 1.如果发现环,输出从前几次就可以确定出现环 2.如果能够确定唯一序列,输出. 3.如果通过全部关系,还不能确定序列,则输出不能确定. 分析: 个人 ...

  5. BZOJ 1010 [HNOI2008]玩具装箱toy

    1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 7184  Solved: 2724[Submit][St ...

  6. ubuntu14.04下嵌入式工作环境搭建

    昨天作死一不小心把小红帽home目录下的东西删光了.跟着国嵌的视频学了这么久,对linux也算是有些熟悉,就决定自己在ubuntu下搭建一个工作环境.整个过程还算比较顺利,不过也有些小波折.下面把这次 ...

  7. visual studio 调试grunt

    原文地址: https://yoavniran.wordpress.com/2015/06/25/debug-grunt-tasks-in-visual-studio-2015/

  8. MySQL定时事件

    1.创建一个测试表 CREATE TABLE aaa (timeline TIMESTAMP); 2.创建一个事件:每秒插入一条记录到数据表 CREATE EVENT e_test_insert SE ...

  9. 《使用Win32DiskImager安装Ubuntu16.04》

    之前,一直使用的是“软碟通”来制作Ubuntu启动盘,或使用“EasyBCD”硬盘安装双系统,但前者在Ubuntu14.10及以后版本中便再也行不通了.此问题是由于Ubuntu使用了最新的syslin ...

  10. 浅谈MVC模式

    MVC模式(三层架构模式) (Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller ...