Quanquan te enseña a jugar con USB.
Capítulo 1 Descripción general de USB y conceptos básicos del protocolo
1.1 ¿Qué es USB?
1.2 Características de USB
1.3 Topología de USB
1.4Características eléctricas del USB
1.5Cables, clavijas y tomas de corriente USB
1.6Mecanismo de detección de inserción de USB
1.7Descriptores USB y sus relaciones
1.8 Proceso de enumeración de dispositivos USB
1.9 Estructura de paquetes USB y proceso de transmisión
1.9.1 Estructura de paquetes USB y clasificación de paquetes
1.9.2 Paquete de tokens
1.9.3 Paquete de datos
1.9.4 Paquete de protocolo de enlace
1.9.5 Paquetes especiales
1.9.6 Cómo manejar paquetes de datos
1.10 Cuatro tipos de transmisión de USB
1.10.1Transacciones USB
1.10 .2 Transmisión por lotes
1.10.3 Transmisión interrumpida p>
1.10.4 Transmisión isócrona
1.10.5 Transmisión de control
1.10.6 La relación entre el tipo de punto final y el tipo de transmisión
1.10.7 Tipo de transmisión y longitud máxima de paquete admitida por el punto final
1.11 Resumen de este capítulo
Capítulo 2 Diseño del sistema de hardware
2.1 Solución y selección de chip
2.2Descripción de la función del pin D12
2.3Conexión D12 y AT89S52
2.4 Parte del puerto serie Circuito
2.5 Parte del botón
2.6 parte de la luz indicadora
2.7 parte de la interfaz IDE
2.8 parte del microcontrolador
2.9 Instalación de componentes
2.10 Depuración de circuitos
2.11 Escritura y depuración de programas de prueba
2.11.1 Establecimiento de un proyecto
2.11.2 Agregar archivos fuente al proyecto
2.11.3 Introducción a Barra de herramientas y simulación KEIL
2.11.4 Escritura de controlador de botones
2.11.5 Escritura de controlador de puerto serie
p>
2.11.6 Implementación de Función de lectura-escritura PDIUSBDl2 e ID de lectura
2.12 Resumen de este capítulo
Capítulo 3 Implementación del mouse USB
3.1 Establecimiento del mouse USB del proyecto
3.2 Desconexión y conexión USB
3.3 Procesamiento de interrupción USB
3.4 Lectura de datos enviados desde el host al endpoint O
3.5 Solicitud estándar USB p>
3.5.1 Estructura de la solicitud de dispositivo USB estándar
3.5.2 Solicitud GET_DESCRIPTOR
3.5.3 Solicitud SET_ADDRESS
3.5.4 Solicitud SETCONFIGURATION
3.6 Implementación del descriptor de dispositivo
3.7 Devolución del descriptor de dispositivo
3.8 Procesamiento de solicitud de configuración de dirección
3.9 Estructura de la colección de descriptores de configuración
3.9.1 Estructura del descriptor de configuración
3.9.2 Estructura del descriptor de interfaz
3.9.3 Estructura del descriptor de punto final
3.9. 4 Estructura del descriptor HID
3.10 Implementación de la recopilación y devolución de descriptores de configuración
3.11 Implementación de solicitudes de ID de cadena y de idioma
3.12 Implementación de la solicitud de configuración de configuración
3.13 Estructura e implementación del descriptor del informe
3.14 Devolución del informe
3.15 Introducción a la herramienta BusHound
3.16 Resumen de este capítulo
Capítulo 4 Implementación del teclado USB
4.1 Creación del proyecto de teclado USB
4.2 Implementación del descriptor de dispositivo
4.3 Implementación de la colección de descriptores de configuración
4.3.1 Descriptor de configuración
4.3.2 Descriptor de interfaz
4.3 Descriptor 3HID_<.
/p>
4.3.4 Descriptor de punto final
4.4 Descriptor de cadena
4.5 Descriptor de informe
4.6 Implementación de informes de entrada y salida
4.7 Prueba de instancias de teclado USB
4.8 Hablando nuevamente sobre el descriptor de informe USBHID
4.9 Teclado USB con función de mouse (Método 1)
4.10 Teclado USB con función de mouse (Método 2)
4.11 Teclado USB multimedia
4.12 Resumen de este capítulo
Capítulo 5 Preparación de USBHID definido por el usuario
5.1 Creación del proyecto MyUsbHid
5.2 Modificación del descriptor
5.3 Implementación del informe
5.4 Acceso al dispositivo USBHID definido por el usuario
5.5 Funciones relacionadas utilizadas al acceder a dispositivos HID
5.5.1 Función para obtener el GUID de clase de interfaz del dispositivo HID
5.5.2 Obtener las funciones especificadas para todas las colecciones de información del dispositivo de la clase
5.5.3 Funciones para obtener información de la interfaz de un dispositivo a partir de la recopilación de información del dispositivo
5.5.4 Funciones para obtener información detallada de la interfaz del dispositivo especificada
p >
5.5.5 Función para abrir el dispositivo
5.5.6 Función para obtener atributos HID del dispositivo
5.5.7 Función para leer datos del dispositivo
5.5.8 Función para escribir datos en el dispositivo
5.5.9 Función para leer el informe a través del terminal de control O
5.5.10 Función para enviar el informe a través del control endpoint O
p>5.5.11 Función para cerrar el identificador
5.5.12 Archivos de biblioteca que deben incluirse
5.6 Implementación de software de computadora host para acceder a dispositivos USBHID
5.6.1 Ideas para escribir programas de computadora host
5.6.2 Código para buscar y abrir dispositivos HID
5.6.3 Código para leer entradas hilo de informe
5.6.4 Escriba el código para generar el informe (enviando estado del LED)
5.6.5 Escriba el código para generar el hilo de informe
5.6 .6 Creación de subprocesos y registro de eventos de complementos del dispositivo
5.6.7 Manejo de eventos de cambio de estado del dispositivo
5.7 Interfaz y uso del software
5.8 Resumen de esto capítulo
Capítulo 6 USB a puerto serie
6.1 Historia familiar del puerto serie
6.2 Distribución de pines y función del conector del puerto serie
6.3 Método de implementación de USB a puerto serie
6.4 Descriptor de dispositivo
6.5 Descriptor de cadena
......
Capítulo 7 USBMIDI Teclado
Capítulo 8 Disco USB
Capítulo 9 Desarrollo de controladores y dispositivos USB personalizados
Capítulo 10 Desarrollo de controladores de filtro USB
Información completa de depuración del ejemplo en el Apéndice Capítulo 3
Referencias
Posdata
……