利用pyusb来查询当前所以usb设备

具体代码如下

#!/usr/bin/python
import sys
import usb.core
# find USB devices
dev = usb.core.find(find_all=True)
# loop through devices, printing vendor and product ids in decimal and hex
for cfg in dev:
  sys.stdout.write(‘Decimal VendorID=‘ + str(cfg.idVendor) + ‘ & ProductID=‘ + str(cfg.idProduct) + ‘\n‘)
  sys.stdout.write(‘Hexadecimal VendorID=‘ + hex(cfg.idVendor) + ‘ & ProductID=‘ + hex(cfg.idProduct) + ‘\n\n‘)

测试结果如下

键盘有插入时usb的情况

Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 07:18:10) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>
================== RESTART: C:/Users/libra/Desktop/1111.py ==================
Decimal VendorID=32902 & ProductID=35878
Hexadecimal VendorID=0x8086 & ProductID=0x8c26

Decimal VendorID=32902 & ProductID=35885
Hexadecimal VendorID=0x8086 & ProductID=0x8c2d

Decimal VendorID=1133 & ProductID=49948
Hexadecimal VendorID=0x46d & ProductID=0xc31c

Decimal VendorID=1266 & ProductID=46001
Hexadecimal VendorID=0x4f2 & ProductID=0xb3b1

Decimal VendorID=7247 & ProductID=81
Hexadecimal VendorID=0x1c4f & ProductID=0x51

Decimal VendorID=32903 & ProductID=32768
Hexadecimal VendorID=0x8087 & ProductID=0x8000

Decimal VendorID=32903 & ProductID=32776
Hexadecimal VendorID=0x8087 & ProductID=0x8008

Decimal VendorID=32902 & ProductID=35889
Hexadecimal VendorID=0x8086 & ProductID=0x8c31

键盘问插入时usb的情况

================== RESTART: C:/Users/libra/Desktop/1111.py ==================
Decimal VendorID=32902 & ProductID=35878
Hexadecimal VendorID=0x8086 & ProductID=0x8c26

Decimal VendorID=32902 & ProductID=35885
Hexadecimal VendorID=0x8086 & ProductID=0x8c2d

Decimal VendorID=1266 & ProductID=46001
Hexadecimal VendorID=0x4f2 & ProductID=0xb3b1

Decimal VendorID=7247 & ProductID=81
Hexadecimal VendorID=0x1c4f & ProductID=0x51

Decimal VendorID=32903 & ProductID=32768
Hexadecimal VendorID=0x8087 & ProductID=0x8000

Decimal VendorID=32903 & ProductID=32776
Hexadecimal VendorID=0x8087 & ProductID=0x8008

Decimal VendorID=32902 & ProductID=35889
Hexadecimal VendorID=0x8086 & ProductID=0x8c31
时间: 2024-10-13 02:02:55

利用pyusb来查询当前所以usb设备的相关文章

利用mass storage class 做免驱动usb设备.

当需要使用usb bulk传输,想让设备像串口通讯那样和PC主机通信, 通常需要自己做一个PC端的驱动,比较麻烦. 为避免在pc上编写usb设备驱动的麻烦,可以将设备做成mass storage 类的设备,使用通用的驱动. 在通讯之前设备端需要先做两件事: 1,实现mass storage 类的描述符和类请求. 2,实现必要的SCSI命令,让PC认为该设备已正常运作. 我利用修改linux中的gadget zero设备做了一个简单的设备. 如果是在裸机程序下面做,应该也差不多,直接拿芯片厂商BS

C#:基于WMI查询USB设备

来源:http://blog.csdn.net/jhqin/article/details/6734673 /* ---------------------------------------------------------- 文件名称:WMIUsbQuery.cs 作者:秦建辉 MSN:[email protected] QQ:36748897 博客:http://blog.csdn.net/jhqin 开发环境: Visual Studio V2010 .NET Framework 4

USB设备驱动开发之远程访问USB设备(一)

By Fanxiushu 2016 05-15  转载或引用本文,请注明原始作者. 使用过vmware的人都应该知道,vmware虚拟机有这样的一个功能, 当在宿主机上插入一个USB设备的时候,通过设置,可以在vmware的虚拟机系统里边能访问到这个USB设备, 而且访问这个USB设备,就跟真的把这个USB设备插入到这个虚拟系统中一样,跟真实的几乎没任何区别. 再看一种情况,假设有两台机器C和S,C 机器是你正在使用的机器, S机器在远端,你只能通过远程控制S. S机器的配置和功能都很强大,大部

Virtualbox使用点滴(共享USB设备,Linux下我的用户没有加到vboxuser中去)

由于网银客户端的问题,只能够在windows环境下支付,所以一直保存着一个激活的virtualbox下的windows,用来完成在线支付. 过去这个激活的windows是安装在ubuntu 10.10 32bit版本上的,通过将usb设备共享给虚拟机实现网银支付. 由于机器更新,从virtualbox导出,安装到ubuntu 11.04 64bit版本上,可是每次试图开启usb共享时都会报错,终于到了周末,有些时间来跟踪这个问题了. 首先看错误报告,错误报告说需要为virtualbox安装ext

USB设备

在终端用户看来,USB设备为主机提供了多种多样的附加功能,如文件传输,声音播放等,但对USB主机来说,它与所有USB设备的接口都是一致的.一个USB设备由3个功能模块组成:USB总线接口.USB逻辑设备和功能单元.这里的USB总线接口指的是USB设备中的串行接口引擎(SIE):USB逻辑设备被USB系统软件看作是一个端点的集合:功能单元被客户软件看作是一个接口的集合.SIE.端点和接口都是USB设备的组成单元. 为了更好地描述USB设备的特征,USB提出了设备架构的概念.从这个角度来看,可以认为

C# 获取USB设备信息

WMI方式 using System; using System.Management; using System.Text.RegularExpressions; using System.Collections.Generic; namespace Splash.IO.PORTS { /// <summary> /// 即插即用设备信息结构 /// </summary> public struct PnPEntityInfo { public String PNPDeviceI

USB设备被识别流程【转】

转自:http://blog.csdn.net/myarrow/article/details/8286876 USB模块包括usb core,host,hub,device驱动,其中hub会启动一个内核线程名曰:khubd(hub_events一直在查询(hub使用的是中断传输), 当usb 设备连接在 hub 的某个端口上,hub检测到有设备连接了进来,hub会去调用hub_port_status函数去获取hub端口状态,要是真有设备了,会调用hub_port_connect_change函

Linux下如何挂载FAT32格式USB设备

挂u盘之前,运行命令cat /proc/partitions,看看现在系统中有哪些分区.插上u盘以后,再次运行上述命令,看看多出来什么分区.通常是sda1. 1.插入U盘 2.输入 fdisk -l /dev/sda 查看输出结果,比如我的是这样的: [[email protected] proc]# fdisk -l /dev/sda Disk /dev/sda: 2004 MB, 2004877312 bytes 247 heads, 62 sectors/track, 255 cylind

Linux下的硬件驱动——USB设备(转载)

usb_bulk_msg函数 当对usb设备进行一次读或者写时,usb_bulk_msg 函数是非常有用的; 然而, 当你需要连续地对设备进行读/写时,建议你建立一个自己的urbs,同时将urbs 提交给usb子系统. 转载于此http://os.chinaunix.net/a2003/0630/1056/000001056933.shtml Linux下的硬件驱动——USB设备(上)(驱动配置部分) USB设备越来越多,而Linux在硬件配置上仍然没有做到完全即插即用,对于Linux怎样配置和