获取指定USB设备的VIDPID和SerialNumber
2025-08-02 01:25:53作者:鲍丁臣Ursa
1. 适用场景
在开发或调试USB设备时,获取设备的VID(Vendor ID)、PID(Product ID)以及SerialNumber(序列号)是常见的需求。这些信息可以帮助开发者:
- 识别特定设备型号。
- 编写驱动程序或固件时进行设备匹配。
- 调试设备连接问题。
- 在多设备环境中区分不同的USB设备。
2. 适配系统与环境配置要求
适配系统
- Windows:支持Windows 7及以上版本。
- Linux:支持大多数主流发行版(如Debian、CentOS等)。
- macOS:支持macOS 10.12及以上版本。
环境配置要求
- Windows:需要安装USB驱动开发工具包(如WinUSB、libusb等)。
- Linux:需要安装
lsusb
工具(通常默认安装)。 - macOS:需要安装
system_profiler
工具(系统自带)。
3. 资源使用教程
Windows系统
- 打开设备管理器。
- 找到目标USB设备,右键选择"属性"。
- 切换到"详细信息"选项卡,选择"硬件ID"。
- 在值中查找
VID_XXXX
和PID_XXXX
,即为设备的VID和PID。 - 序列号可能需要通过编程接口(如WinUSB)获取。
Linux系统
- 打开终端,输入以下命令:
lsusb -v
- 在输出中找到目标设备,记录
idVendor
(VID)和idProduct
(PID)。 - 序列号通常显示在
iSerial
字段中。
macOS系统
- 打开终端,输入以下命令:
system_profiler SPUSBDataType
- 在输出中找到目标设备,记录
Vendor ID
和Product ID
。 - 序列号通常显示在
Serial Number
字段中。
4. 常见问题及解决办法
问题1:无法识别USB设备
- 解决办法:
- 检查设备是否已正确连接。
- 确保设备驱动已安装(Windows系统)。
- 尝试更换USB端口或数据线。
问题2:无法获取序列号
- 解决办法:
- 某些设备可能未提供序列号信息。
- 尝试使用编程接口(如libusb)直接读取设备描述符。
问题3:命令输出信息过多
- 解决办法:
- 使用
grep
命令过滤输出(Linux/macOS)。 - 在设备管理器中通过硬件ID筛选(Windows)。
- 使用
通过以上方法,您可以轻松获取USB设备的VID、PID和序列号,为后续开发或调试工作提供便利。