Compartir a través de


Identificadores USB estándar

El conjunto de identificadores generados para dispositivos USB depende de si el dispositivo es un dispositivo de interfaz única o un dispositivo de varias interfaces.

Dispositivos USB de interfaz única

Cuando se conecta un nuevo dispositivo USB, el controlador del concentrador USB proporcionado por el sistema compone el siguiente identificador de dispositivo mediante la información extraída del descriptor de dispositivo del dispositivo:

USB\VID_v(4)&PID_d(4)&REV_r(4)

Donde:

  • v(4) es el código de proveedor que el comité USB asigna al proveedor.
  • d(4) es el código de producto que el proveedor asigna al dispositivo.
  • r(4) es el código de revisión.

El controlador del concentrador extrae los códigos de proveedor y producto de los campos idVendor, idProduct y bcdDevice del descriptor de dispositivo, respectivamente. Estos códigos son números hexadecimales de cuatro dígitos.

Una sección del modelo INF también puede especificar el siguiente identificador de hardware:

USB\VID_v(4)&PID_d(4)

Y los siguientes identificadores compatibles:

USB\CLASS_c(2)&SUBCLASS_s(2)&PROT_p(2)

USB\CLASS_c(2)&SUBCLASS_s(2)

USB\CLASS_c(2)

Donde:

  • c(2) es el código de clase de dispositivo tomado del descriptor de dispositivo.
  • s(2) es el código de la subclase del dispositivo.
  • p(2) es el código de protocolo.

Los campos bDeviceClass, bDeviceSubClass y bDeviceProtocol del descriptor de dispositivo determinan el código de clase de dispositivo, el código de subclase y el código de protocolo, respectivamente. Estos códigos son números hexadecimales de dos dígitos.

Dispositivos USB de varias interfaces

Los dispositivos con varias interfaces se denominan dispositivos compuestos . Cuando se conecta un nuevo dispositivo compuesto USB a un equipo Windows, el controlador del concentrador USB crea un objeto de dispositivo físico (PDO) y notifica al sistema operativo que actualice la lista de dispositivos secundarios. Después de que Windows consulta el controlador del concentrador para los identificadores de hardware asociados con el nuevo PDO, busca en los archivos INF adecuados para buscar una coincidencia con los identificadores. Si encuentra una coincidencia distinta de USB\COMPOSITE, carga el controlador indicado en el archivo INF. Sin embargo, si no se encuentra ninguna otra coincidencia, el sistema operativo usa el identificador compatible USB\COMPOSITE, para el que carga el controlador primario genérico USB. A continuación, el controlador primario genérico crea un PDO independiente y genera un conjunto independiente de identificadores de hardware para cada interfaz del dispositivo compuesto.

Cada interfaz tiene un identificador de dispositivo de la forma siguiente:

USB\VID_v(4)&PID_d(4)&MI_z(2)

Donde:

Una sección del modelo INF también puede especificar los siguientes identificadores compatibles:

USB\CLASS_d(2)&SUBCLASS_s(2)&PROT_p(2)

USB\CLASS_d(2)&SUBCLASS_s(2)

USB\CLASS_d(2)

USB\COMPOSITE

Donde:

  • d(2) es el código de clase de dispositivo tomado del descriptor de dispositivo.
  • s(2) es el código de subclase.
  • p(2) es el código de protocolo.

Los campos bInterfaceClass, bInterfaceSubClass y bInterfaceProtocol del descriptor de interfaz determinan el código de clase de dispositivo, el código de subclase y el código de protocolo, respectivamente. Estos códigos son números hexadecimales de dos dígitos.