USB设备的VID与PID

======================================================================================================================================

一、VID和PID
  PID/VID唯一标识一个设备,HardwareID是为了给系统识别的 ,他是根据PID/VID而生成的。这个与序列号没什么关系,序列号一般都是厂家固化到芯片中的信息而已。GUID只是为了标志你安装的设备是属于一个什么类当中,这个类可以显示再设备管理器中。比如:你可以定义一个类,当然这个类有与系统中任何类都不同的GUID,然后选择一个图标和类名,就可以同网卡等其他设备一起显示在设备管理器下的根目录中了

  根据USB规范的规定,所有的USB设备都有供应商ID(VID)和产品识别码(PID),主机通过不同的VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID(VID)由供应商向USB执行论坛申请,每个供应商的VID是唯一的,PID由供应商自行决定,理论上来说,不同的产品、相同产品的不同型号、相同型号的不同设计的产品最好采用不同的PID,以便区别相同厂家的不同设备。

   VID和PID通常情况下有两种存储方式,第一种是主控生产商的VID和PID,存储在主控的bootcode中;第二种是设备生产商的VID和PID,该VID和PID存储在主控外部的非易失性存储设备中(EEPROM或Flash)的设备固件中,当USB设备连接主机时,如果固件中有设备生产商的VID和PID,会将该VID和PID报告给主机,而忽略主控生产商的VID和PID。所以理论上一个USB存储设备的VID应该是设备生产商的VID,而不是主控生产商的VID,这两个VID应该是不同的(主控生产商自己生产的设备除外)。

   由于VID和PID重复并不会对产品的使用带来严重影响,很多USB设备生产商(山寨厂居多)为了方便,并不会向USB执行论坛申请自己的VID,而是依然沿用主控生产商的VID或随便向产品写入VID和PID;同时,正规厂家只需要申请VID,PID由厂家自行确定,所以存在相同型号的产品,可能采用了不同的主控(商业需要,很正常),而他们的PID是一样的,基于上述原因通过VID和PID就不能准确识别USB设备的主控型号,这个问题大家在使用USB设备的过程中需要注意。

二、常用设备VID和PID

1.摄像头VID和PID

{USB_DEVICE (0x0733, 0x0430)}, /* Intel PC Camera Pro */ 
{USB_DEVICE (0x0733, 0x0401)}, /* Intel Create and Share */ 
{USB_DEVICE (0x99FA, 0x8988)}, /* Grandtec V.cap */ 
{USB_DEVICE (0x0733, 0x0402)}, /* ViewQuest M318B */ 
{USB_DEVICE (0x0733, 0x0110)}, /* ViewQuest VQ110 */ 
{USB_DEVICE (0x040A, 0x0002)}, /* Kodak DVC-325 */
{USB_DEVICE (0x055f, 0xc420)}, /* Mustek gSmart Mini 2 */ 
{USB_DEVICE (0x055f, 0xc520)}, /* Mustek gSmart Mini 3 */ 
{USB_DEVICE (0x041E, 0x400A)}, /* Creative PC-CAM 300 */ 
{USB_DEVICE (0x084D, 0x0003)}, /* D-Link DSC-350 */
{USB_DEVICE (0x041E, 0x400B)}, /* Creative PC-CAM 600 */
{USB_DEVICE (0x8086, 0x0630)}, /* Intel Pocket PC Camera */ 
{USB_DEVICE (0x8086, 0x0110)}, /* Intel Easy PC Camera */ 
{USB_DEVICE (0x0506, 0x00df)}, /* 3Com HomeConnect Lite */ 
{USB_DEVICE (0x040a, 0x0300)}, /* Kodak EZ200 */ 
{USB_DEVICE (0x04fc, 0x504b)}, /* Maxell MaxPocket LE 1.3 */
{USB_DEVICE (0x08ca, 0x2008)}, /* Aiptek Mini PenCam 2 M */ 
{USB_DEVICE (0x08ca, 0x0104)}, /* Aiptek PocketDVII 1.3 */ 
{USB_DEVICE (0x08ca, 0x2018)}, /* Aiptek Pencam SD 2M */ 
{USB_DEVICE (0x04fc, 0x504a)}, /* Aiptek Mini PenCam 1.3 */ 
{USB_DEVICE (0x055f, 0xc530)}, /* Mustek Gsmart LCD 3 */
{USB_DEVICE (0x055f, 0xc650)}, /* Mustek MDC5500Z */ 
{USB_DEVICE (0x052b, 0x1513)}, /* Megapix V4 */
{USB_DEVICE (0x08ca, 0x0103)}, /* Aiptek PocketDV */ 
{USB_DEVICE (0x0af9, 0x0010)}, /* Hama USB Sightcam 100 */
{USB_DEVICE (0x1776, 0x501c)}, /* Arowana 300K CMOS Camera */ 
{USB_DEVICE (0x08ca, 0x0106)}, /* Aiptek Pocket DV3100+ */ 
{USB_DEVICE (0x08ca, 0x2010)}, /* Aiptek PocketCam 3M */ 
{USB_DEVICE (0x0458, 0x7004)}, /* Genius VideoCAM Express V2 */ 
{USB_DEVICE (0x04fc, 0x0561)}, /* Flexcam 100 */
{USB_DEVICE (0x055f, 0xc430)}, /* Mustek Gsmart LCD 2 */ 
{USB_DEVICE (0x04fc, 0xffff)}, /* Pure DigitalDakota */ 
{USB_DEVICE (0xabcd, 0xcdee)}, /* Petcam */
{USB_DEVICE (0x04a5, 0x3008)}, /* Benq DC 1500 */ 
{USB_DEVICE (0x046d, 0x0960)}, /* Logitech Inc. ClickSmart 420 */ 
{USB_DEVICE (0x046d, 0x0901)}, /* Logitech Inc. ClickSmart 510 */ 
{USB_DEVICE (0x04a5, 0x3003)}, /* Benq DC 1300 */ 
{USB_DEVICE (0x0af9, 0x0011)}, /* Hama USB Sightcam 100 */ 
{USB_DEVICE (0x055f, 0xc440)}, /* Mustek DV 3000 */ 
{USB_DEVICE (0x041e, 0x4013)}, /* Creative Pccam750 */ 
{USB_DEVICE (0x060b, 0xa001)}, /* Maxell Compact Pc PM3 */ 
{USB_DEVICE (0x04a5, 0x300a)}, /* Benq DC3410 */ 
{USB_DEVICE (0x04a5, 0x300c)}, /* Benq DC1016 */ 
{USB_DEVICE (0x0461, 0x0815)}, /* Micro Innovation IC200 */
{USB_DEVICE (0x046d, 0x0890)}, /* Logitech QuickCam traveler */
{USB_DEVICE (0x10fd, 0x7e50)}, /* FlyCam Usb 100 */ 
{USB_DEVICE (0x06e1, 0xa190)}, /* ADS Instant VCD */ 
{USB_DEVICE (0x055f, 0xc220)}, /* Gsmart Mini */
{USB_DEVICE (0x0733, 0x2211)}, /* Jenoptik jdc 21 LCD */
{USB_DEVICE (0x046d, 0x0900)}, /* Logitech Inc. ClickSmart 310 */
{USB_DEVICE (0x055f, 0xc360)}, /* Mustek DV4000 Mpeg4 */ 
{USB_DEVICE (0x08ca, 0x2024)}, /* Aiptek DV3500 Mpeg4 */ 
{USB_DEVICE (0x046d, 0x0905)}, /* Logitech ClickSmart820 */ 
{USB_DEVICE (0x05da, 0x1018)}, /* Digital Dream Enigma 1.3 */
{USB_DEVICE (0x0c45, 0x6025)}, /* Xcam Shanga */
{USB_DEVICE (0x0733, 0x1311)}, /* Digital Dream Epsilon 1.3 */ 
{USB_DEVICE (0x041e, 0x401d)}, /* Creative Webcam NX ULTRA */ 
{USB_DEVICE (0x08ca, 0x2016)}, /* Aiptek PocketCam 2 Mega */ 
{USB_DEVICE (0x0734, 0x043b)}, /* 3DeMon USB Capture aka */
{USB_DEVICE (0x041E, 0x4018)}, /* Creative Webcam Vista (PD1100) */
{USB_DEVICE (0x0546, 0x3273)}, /* Polaroid PDC2030*/
{USB_DEVICE (0x041e, 0x401f)}, /* Creative Webcam Notebook PD1171*/ 
{USB_DEVICE (0x041e, 0x4017)}, /* Creative Webcam Mobile PD1090*/ 
{USB_DEVICE (0x046d, 0x08a2)}, /* Labtec Webcam Pro*/
{USB_DEVICE (0x055f, 0xd003)}, /* Mustek WCam300A*/ 
{USB_DEVICE (0x0458, 0x7007)}, /* Genius VideoCam V2*/
{USB_DEVICE (0x0458, 0x700c)}, /* Genius VideoCam V3*/ 
{USB_DEVICE (0x0458, 0x700f)}, /* Genius VideoCam Web V2*/ 
{USB_DEVICE (0x041e, 0x401e)}, /* Creative Nx Pro*/ 
{USB_DEVICE (0x0c45, 0x6029)}, /* spcaCam@150 */ 
{USB_DEVICE (0x0c45, 0x6009)}, /* spcaCam@120 */
{USB_DEVICE (0x0c45, 0x600d)}, /* spcaCam@120 */
{USB_DEVICE (0x04fc, 0x5330)}, /* Digitrex 2110*/ 
{USB_DEVICE (0x055f, 0xc540)}, /* Gsmart D30*/ 
{USB_DEVICE (0x0ac8, 0x301b)}, /* Asam Vimicro*/
{USB_DEVICE (0x041e, 0x403a)}, /* Creative Nx Pro 2*/
{USB_DEVICE (0x055f, 0xc211)}, /* Kowa Bs888e Microcamera*/ 
{USB_DEVICE (0x0ac8, 0x0302)}, /* Z-star Vimicro zc0302*/
{USB_DEVICE (0x0572, 0x0041)}, /* Creative Notebook cx11646*/
{USB_DEVICE (0x08ca, 0x2022)}, /* Aiptek Slim 3200*/ 
{USB_DEVICE (0x046d, 0x0921)}, /* Labtec Webcam */
{USB_DEVICE (0x046d, 0x0920)}, /* QC Express */
{USB_DEVICE (0x0923, 0x010f)}, /* ICM532 cams */ 
{USB_DEVICE (0x055f, 0xc200)}, /* Mustek Gsmart 300 */
{USB_DEVICE (0x0733, 0x2221)}, /* Mercury Digital Pro 3.1p*/ 
{USB_DEVICE (0x041e, 0x4036)}, /* Creative Live ! */ 
{USB_DEVICE (0x055f, 0xc005)}, /* Mustek Wcam300A */ 
{USB_DEVICE (0x041E, 0x403b)}, /* Creative Webcam Vista (VF0010) */ 
{USB_DEVICE (0x0545, 0x8333)}, /* Veo Stingray */ 
{USB_DEVICE (0x0545, 0x808b)}, /* Veo Stingray */ 
{USB_DEVICE (0x10fd, 0x8050)}, /* Typhoon Webshot II USB 300k */ 
{USB_DEVICE (0x0000, 0x0000)}, /* MystFromOri Unknow Camera */

  • 6
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值