Red de conocimiento informático - Material del sitio web - Cómo hacer un teclado USB desde cero

Cómo hacer un teclado USB desde cero

Hay dos situaciones:

1. Hacer un teclado USB real. Este diseño básicamente no implica mucha codificación de software.

2. Hacer un teclado USB simulado en realidad no puede tener funciones clave. Esto requiere mucha codificación de software, pero en realidad es un microcontrolador.

El primer diseño: comprar un chip de dispositivo USB ya preparado y luego soldarlo. Casi nunca he oído hablar de nadie que fabrique un chip de dispositivo USB desde cero. para los osciladores de cristal es un problema.

El principio básico es presionar el botón, convertir el código de escaneo, escribirlo en el registro y luego esperar a que el host lo lea.

El host en realidad no necesita hacer ningún diseño, porque el teclado es un dispositivo estándar con su propio controlador.

Segundo diseño: primero, necesitamos encontrar un microcontrolador (placa de circuito) que admita OTG, escribir una pila de dispositivo USB completa (alrededor de decenas de miles de líneas) y definir el descriptor USB (Descriptor) y Descriptor HID (requerido por Windows), luego espera una interrupción del host para transmitir la solicitud.

Escriba el código de escaneo que desea enviar al búfer de interrupción cada vez y luego deje que la pila del dispositivo envíe los datos.

En cuanto a la parte de señalización de hardware, están integradas con el controlador USB (denominado controlador, lo mismo a continuación). Si dice que desea escribir un controlador, entonces la tecnología requerida es demasiado complicada. No hay muchos fabricantes en el mundo que puedan crear sus propios controladores. Debe dominar las especificaciones USB 2.0 y las especificaciones EHCI/UHCI/OHCI para ser un controlador.