首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux USB 设备基础理论

    通过扫描以下目录获取物理节点所有 USB 设备: /sys/bus/usb/devices/usb* /sys/bus/usb/devices/usb*/$busnum-* 从该文件系统收集某一个设备的主要信息如下...(该总线的第几台设备) speed: 速率 bDeviceClass: 设备类型 idVendor: 设备的生产商ID,由USB设备生产商向USB-IF官方来统一管理和申请 idProduct: 该生产商生产的产品编号...,同一厂商的不同idProduct代表着该公司不同的产品系列 product: 制造商 manufacturer: 产品 serial: USB 硬件设备序列号 ,例如 0000:00:01.2 定位方法...参考文献# USB设备类bDeviceClass、bDeviceSubClass、bDeviceProtocol By USB 中文网 USB设备描述符中的idVendor、idProduct和bcdDevice...By USB 中文网 USB 硬件设备的序列号 By IBM 注:本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

    40030

    Linux 上如何禁用 USB 存储设备

    为了消除这种可能性,机构会限制和监测访问互联网,同时禁用 USB 存储设备。 在本教程中,我们将讨论三种不同的方法来禁用 Linux 机器上的 USB 存储设备。...方法 2:删除 USB 驱动 这种方法要求我们将 USB 存储的驱动程序(usb_storage.ko)删掉或者移走,从而达到无法再访问 USB 存储设备的目的。.../user 现在在默认的位置上无法再找到驱动程序了,因此当 USB 存储器连接到系统上时也就无法加载到驱动程序了,从而导致磁盘不可用。...usb-storage 保存文件并退出。...usb-storage 就在就会被系统阻止加载,但这种方法有一个很大的缺点,即任何特权用户都可以通过执行以下命令来加载 usb-storage 模块, $ sudo modprobe usb-storage

    10K10

    USB设备状态

    USB设备插上主机时,主机就通过一系列的动作来对设备进行枚举配置(配置是属于枚举的一个态,态表示暂时的状态),这些态如下: 1、接入态(Attached):设备接入主机后,主机通过检测信号线上的电平变化来发现设备的接入...; 2、供电态(Powered):就是给设备供电,分为设备接入时的默认供电值,配置阶段后的供电值(按数据中要求的最大值,可通过编程设置); 3、缺省态(Default):USB在被配置之前,通过缺省地址...0与主机进行通信; 4、地址态(Address):经过了配置,USB设备被复位后,就可以按主机分配给它的唯一地址来与主机通信,这种状态就是地址态; 5、配置态(Configured):通过各种标准的USB...请求命令来获取设备的各种信息,并对设备的某此信息进行改变或设置; 6、挂起态(Suspended):USB总线处于空闲状态的话,该设备就要自动进入挂起状态,在进入挂起状态后,总的电流功耗不超过280UA...是 是 __ __ __ __ __ __ 是 设备在至少3毫秒以内探测不到总线活动,自动进如挂起.设备功能不可用. 下图为设备状态转化图:

    1.7K20

    USB总线-Linux内核USB3.0设备控制器驱动框架分析(四)

    2.Gadget Function驱动 Linux内核的USB Gadget Function驱动都在drivers/usb/gadget/function/目录下,有通讯设备类(Communication...alloc_func创建usb_function并初始化,重点是设置里面的回调函数,通常情况,不直接使用usb_function数据结构,而是嵌入到驱动的数据结构中使用。...[include/linux/usb/composite.h] struct usb_function_driver { const char *name; struct module...Linux 3.11版本引入了USB Gadget Configfs。在用户层可以通过暴漏出来的API定义USB Gadget设备的任意功能和配置,极大的方便了USB复合设备的配置和使用。...5.UDC驱动 5.1.函数接口 UDC驱动模块定义如下,内核初始化或模块加载时初始化,创建udc_class,设置uevent的回调函数为usb_udc_uevent。

    10.1K20

    USB总线-Linux内核USB3.0设备控制器之UDC驱动分析(六)

    USB Function驱动通过调用这些接口匹配及访问USB设备控制器,而底层USB控制器驱动要实现这些接口定义的功能。下面分析一主要的UDC驱动接口调用流程。 2....NYET(not yet) 只有高速设备才会发送NYET。高速批量和控制传输都支持一种协议,它使主机在有设备可接收数据的情况,能够在发送数据之前找到此设备。...如果数据信息包很大且设备总是没有准备好,不断重新尝试可能会浪费很多总线时间。这种情况,使用带有多个数据信息包的高速批量和控制传输将是更好的途径。...发送PING的方法只在确定了设备没有准备好,必须在稍后重传的情况才会比发送整个数据信息包的方式更为有效。主机是否使用PING是可选的。 USB 2.0集线器可能会在完成分割事务中返回NYET。...无响应 另一种状态指示类型发生在主机或设备期望接收联络但却没有收到任何信息的情况。接收端的错误检查发现错误时,就会产生这种响应缺失。

    9.4K20

    linux 设备驱动加载的先后顺序

    Linux驱动先注册总线,总线上可以先挂device,也可以先挂driver,那么究竟怎么控制先后的顺序呢。 1、初始化宏 Linux系统使用两种方式去加载系统中的模块:动态和静态。...静态加载:将所有模块的程序编译到Linux内核中,由do_initcall函数加载 核心进程(/init/main.c)kernel_inità do_basic_setup()àdo_initcalls...()该函数中会将在__initcall_start和__initcall_end之间定义的各个模块依次加载。...2、编译顺序 同一级别的初始化是和编译顺序有关的,并不是和设备列表一致。 【问题】 背光驱动初始化先于LCD驱动初始化,导致LCD驱动初始化时出现闪屏的现象。...PWM(xxxpwm_backlight_device)设备

    3.6K40

    第4章_USB 设备编程

    软件框架 APP 可以通过 USB 设备驱动程序访问 USB 设备,也可以绕过 USB 设备驱动,直接通过 USB 控制器驱动访问 USB 设备。...Hub 端口发出 SE0 信号,这就是复位信号 USB 设备监测到 SE0 信号后,会发出"a high-speed detection handshake"信号表示自 己能支持高速模式, 这可以细分为一...) 在软件开发过程中, 我们可以忽略 Hub 的存在,硬件拓扑图简化如下: 一个物理设备里面可能有多个逻辑设备, Hos 可以外接多个逻辑设备, 硬件拓扑图如 : 4.4.2 协议层 要理解协议层、理解数据如何传输...大多数的 USB 设备只有一种配置。 一个配置,可以有多个接口(Interface),接口等同于功能(Function)。比如 USB 耳 机有两个接口(功能):声音收发、按键控制。...一个接口, 可能有多个设置(Setting),比如默认设置它使用较低的带宽, 可以选择 其他设置以使用更高带宽。 一个接口, 由一个或多个端点(Endpoint)组成。

    18710

    arm linux利用alsa驱动并使用usb音频设备

    一.背景: arm linux的内核版本是3.13.0 二.准备工作 添加alsa驱动到内核中,也就是在编译内核的时候加入以下选项: ?...接下来就重新编译内核即可 三.交叉编译alsa-lib和alsa-utils (alsa-utils是一系列的音频设备控制工具,而alsa-lib是alsa-utils依赖的库,所以先将alsa-lib...设置录音时的音量大小 amixer cset numid=8,iface=MIXER,name='Mic Volume' 255 六:注意事项: 如果将编译好的alsa-utils中的工具复制到fat32格式的存储设备的时候...,注意fat32是不支持软链接的,此时需要直接复制一个aplay并将名称改为arecord: cp aplay arecord 总结 以上所述是小编给大家介绍的arm linux利用alsa驱动并使用...usb音频设备 ,希望对大家有所帮助!

    6.2K31

    linux usb端点

    一系列相互独立的端点在一起构成了USB逻辑设备,在系统结构中,位于下方红色方框内: 二、端点的分类 每个USB设备都有一个唯一的设备地址,设备地址是设备连接上主机时由主机分配的,主机主要依靠这个设备地址对...USB设备进行访问。...但是需要注意其中的一个特殊端点--端点0,每个USB设备必须要有一个端点0,其作用为对设备枚举和对设备进行一些基本的控制功能,端点0也被称为控制端点。...六、端点的传输类型 一个具体的端点只能属于四个传输模式中的一种。数据传输类型分为四种分别是:控制传输、批量传输、同步传输和中断传输。...一般情况,通常把工作在什么模式的端点就叫什么端点,例如:控制端点、批量端点、同步端点和中断端点。

    10K30

    C# 获得设备usb信息

    本文告诉大家如何获得设备usb来进行判断是否有哪些usb和找不到usb可能是什么。...需要在项目右击引用,点击程序集,搜索 System.Management 然后安装他 然后使用下面的代码就可以获得设备usb 请看代码 static List<(string DeviceID...} collection.Dispose(); return devices; } 如果需要判断是否存在某个 usb...,就通过 pid vid 判断,判断的方法是拿PNPDeviceID字符串比较 参见:c# 获取移动硬盘信息、监听移动设备的弹出与插入事件 - Chris Cheung - 博客园 如果发现找不到 usb...,可能是在开机的时候进行找usb,一般需要开机之后很久才会把所有的设备添加,所以如果找不到,就看开机的时间,如果太短,那么可能是因为程序太快去查。

    2.1K30

    C# 获得设备usb信息

    本文告诉大家如何获得设备usb来进行判断是否有哪些usb和找不到usb可能是什么。...需要在项目右击引用,点击程序集,搜索 System.Management 然后安装他 然后使用下面的代码就可以获得设备usb 请看代码 static List<(string DeviceID...} collection.Dispose(); return devices; } 如果需要判断是否存在某个 usb...,就通过 pid vid 判断,判断的方法是拿PNPDeviceID字符串比较 参见:c# 获取移动硬盘信息、监听移动设备的弹出与插入事件 - Chris Cheung - 博客园 如果发现找不到 usb...,可能是在开机的时候进行找usb,一般需要开机之后很久才会把所有的设备添加,所以如果找不到,就看开机的时间,如果太短,那么可能是因为程序太快去查。

    2.1K10

    网络安全周 - USB 设备

    一、引言随着计算机技术的飞速发展,USB 设备因其便捷性而被广泛应用。然而,这也为恶意攻击者提供了可乘之机。...近年来,出现了利用特制 USB 设备,如特制鼠标,通过 Windows 系统漏洞来自动修改系统配置的安全事件,给用户和企业带来了严重的潜在风险。...三、特制鼠标利用漏洞的原理(一)硬件与软件交互漏洞Windows 系统在处理 USB 设备的连接和通信时,存在某些可被利用的交互漏洞。...(二)USB 设备管理实施严格的 USB 设备接入政策,只允许经过授权的设备接入。(三)安装安全防护软件实时监测系统的异常行为,拦截可疑的 USB 设备操作。...(四)用户安全意识培训提高用户对陌生 USB 设备的警惕性,不随意接入来源不明的设备

    9910
    领券