Paso 4: Enumeración de dispositivos
Para facilitar las cosas que he escrito algún simple firmware para el dispositivo, puede utilizar esto para empezar y también como base para entender cómo funciona el firmware.
Una vez que tienes tu primer dispositivo corriendo que le resultará mucho más fácil entender cómo se puede adaptar para aplicaciones más complejas.
La primera es la enumeración de dispositivos USB - esta hazaña de sonido complejo es en realidad la comunicación inicial con el USB host (ordenador) en el dispositivo dice el host lo que es y cómo desea comunicar.
Comunicación USB se realiza usando 'puntos finales' que envían información al host o al dispositivo. Así como establecer los canales de comunicación del dispositivo debe pasar también su nombre de dispositivo y otros dos valores importantes: la VID y el PID.
El VID es el ID de proveedor e identifica el fabricante del dispositivo. Para obtener su propia VID debe pagar 1 mil dólares o menos al cuerpo de estándares USB.
En este ejemplo vamos a utilizar del Microchip de VID para ahorrar el gasto. Si usted es serio sobre la producción y venta de dispositivos, necesitará registrar una propia.
El PID es el ID del producto. Junto con el VID forman un identificador único para su dispositivo. Cuando el dispositivo se enumera primero Windows guarda la combinación de VID y PID del dispositivo; Esto es cierto incluso si utiliza un controlador genérico como el HID ya que reduce la cantidad de tiempo que Windows necesita para prepararse a su dispositivo.
Esto es importante porque, si usted decide cambiar la información de enumeración del dispositivo (añadir más criterios de valoración, etc.), también necesita por lo menos cambiar el PID antes de volver a de lo contrario obtendrá errores de 'Dispositivo no iniciado' aunque tú código es impecable (por experiencia me he dado cuenta que Linux no es absolutamente tan inquieto y tiende a no quejarse si mantienes la misma combinación de VID/PID).