libusb系列-001-libusb简介

news/2024/12/2 12:42:05/
头图

libusb系列-001-libusb简介

文章目录

  • libusb系列-001-libusb简介
    • 摘要
    • 基本信息
      • 简介
      • 支持平台
      • 官网
    • 如何使用
    • 下载
    • 神奇的1.0.9版本

关键字: DebianLinuxQtlibusb源码

内容背景:

最近项目终于切到Linux下开发了,所以最近的记录都是发生在Debian 10 以及Arm Debain 10 下,Qt版本5.12.3。这几天真是问题多多,收获满满,不过目前阶段仅仅停留在解决问题,至于原理性的东西,还得慢慢消化。最近好多问题都是直接群里问大神,感谢各位大神助我成长。

开始本来USB传世使用的是HIDUSB,后面计划开发一个专用的驱动,到最后,因为最终系统一直定不下来,最终成了使用libusb了。大部分人都是直接使用libusb 的库的,把源码直接放在项目中参与编译的应该很好,哎,我就是那个大冤种,那么请跟随我一起看我如何给自己完坑踩坑吧。

摘要

本文将简单介绍一下libusb。让我们对libusb有一个简单的了解

基本信息

以下内容来之官网网站

简介

libusb是一个由C语言编写的,用于访问USB设备的跨平台用户库。具备以下特点

  1. 可移植:使用单一的跨平台API,支持LInux、macOS、Windows等系统对USB设备的访问。
  2. 用户模式:应用程序与设备通信不需要特殊的权限或者提升。
  3. 与版本无关:支持目前所有版本的USB协议,从1.0 到1.1。

支持平台

Linux、macOS、Windows(Vista 和更新版本)、Android、OpenBSD/NetBSD、Haiku、Solaris。

官网

https://libusb.info/

image-20221021102033199

如何使用

这个有部分发行版的Linux系统会带,可以直接在使用的时候包含libusb头文件既可以,不过大部分情况下,我们可以手动下载源码或动态库直接使用。动态库没啥可说的,每个平台都差不多,win的话就是包头文件,链接lib库,把dll库拷到程序目录,就可以了。linux 下好像可以就只有so文件吧。哈哈,这里我也不太懂,有问题品论去修正。

下载

在官网直接点击Downloads即可跳转到下载地址

image-20221021102323575

image-20221021102618653

也可以打开百度,直接搜索libusb,第一个就是

image-20221021102445137

image-20221021102646368

最终都会跳到github上面,只是百度进来的我们需要点击右面的Release,跳到下载页面,如下图,当然也可以不跳转,直接下载最新的代码。

image-20221021102714152

神奇的1.0.9版本

这里需要特别说一下这个1.0.9版本,这个在好多博主的文章中指明要这个版本的代码,包括我们合作协助开发USB的小伙伴,也是用的1.0.9,后面我正式项目里面用的也是这个版本。同样,这个版本有啥魅力,也请大佬评论区指正。


博客签名2021

http://www.ppmy.cn/news/410954.html

相关文章

B863AV3.2-M、B863AV3.1-M2、E900V22C通刷固件(可救砖)

魔百和B863AV3.2-M、B863AV3.1-M2、E900V22C免拆机通刷包(可救砖)(安卓9.0) 特点: 1、适用于对应型号的电视盒子刷机; 2、开放原厂固件屏蔽的市场安装和u盘安装apk; 3、修改dns,三…

总结901

目标规划: 月目标:6月(线性代数强化9讲,考研核心词过三遍) 周目标:线性代数强化5讲,英语背3篇文章并回诵,检测 每日规划 今日已做 1.回环复习之前背过的文章。 2.背单词&#xf…

CS61A Lab 7

更好的阅读体验 Lab 7: Linked Lists, Trees / Tree Mutation lab07.zip What Would Python Display? Q1: WWPD: Linked Lists Read over the Link class in lab07.py. Make sure you understand the doctests. Use Ok to test your knowledge with the following “What …

目标检测YOLO实战应用案例100讲-基于单目的自动驾驶三维目标检测系统研究

目录 前言 (1)改变输出变量定义的方法 (2)改变输入数据的表达形式 (3)改变特征提取方式

【MarkerDown】CSDN Markdown之类图classDiagram详解

类图 类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性的信息。类图是面向对象建模的主要组成部分。它既用于应用程序的系统分类的一般概念建模,也用于详细建模,将…

【debug】程序调用栈记录profile-backtrace和backtrace|分析瓶颈|分析bug所在

目录 简介 backtrace profile-backtrace 区别 示例 profile-backtrace backtrace 简介 backtrace backtrace是一个用于生成函数调用栈的工具,在程序崩溃或者出现异常时,可以通过backtrace来获取函数调用栈信息,这些信息可以帮助我们…

Vue 3.3 有哪些更新

此版本专注于开发人员体验改进-特别是SFC<script setup>与TypeScript的使用。与Vue语言工具[1]&#xff08;以前称为Volar&#xff09;的1.6版本一起&#xff0c;我们在将Vue与TypeScript一起使用时解决了许多长期存在的痛点。这篇文章概述了3.3中突出显示的功能。有关更…

【计算机网络】第二章应用层-电子科技大学2023期末考试

第二章 应用层 应用层协议原理 网络应用程序体系结构 客户机/服务器体系结构&#xff1a;至少有一个服务器&#xff0c;一个客户机&#xff0c;其中服务器总是打开的&#xff0c;具有固定的众所周知的IP地址&#xff0c;主机群集常被用于创建强大的虚拟服务器&#xff0c;而客…