USB mando clásico de Wii (1 / 18 paso)

Paso 1: Utilizar el AVR con V-USB

Para el microcontrolador, usaremos un ATmega328P. Este microcontrolador cuenta con suficientes recursos de memoria y un incorporado TWI/I2C periférica para lograr nuestros objetivos. Sin embargo, no tiene USB integrado, que es un problema que vamos a resolver usando V-USB.

"V-USB es una implementación software de un dispositivo USB de baja velocidad para microcontroladores de Atmel AVR® lo que es posible construir el hardware del USB con casi cualquier Microcontrolador AVR®, no requieren ningún chip adicional".

- Sitio web oficial de V-USB

V-USB utiliza un conjunto de hardware y un montaje muy especial técnicas de programación bit-bang el código binario de no retorno a cero (NRZ) que utiliza USB para comunicarse. Los archivos V-USB se compilarán en nuestro programa para crear un dispositivo USB con nuestro ATmega328P

Visite la parte de la Página Web de V-USB para obtener una copia de la última versión. En el código de mi proyecto, ya ha incluido.

Para compilar V-USB en su proyecto...

  1. Asegúrese de que usted ha definido el procesador y velocidad del reloj correctamente (V-USB sólo compatible con algunas velocidades de reloj)
  2. Copia la carpeta "usbdrv" desde el paquete descargado en la carpeta del proyecto
  3. En su Gerente de proyecto o makefile, incluyen "usbdrv.c" y "usbdrvasm. S", tal que el archivo de objeto que se genera se convierten vinculará en su proyecto
  4. Dentro de la carpeta "usbdrv", hay un "prototype.h usbconfig", copiar ese archivo en su directorio de proyecto principal y renombrarlo a "usbconfig.h"
  5. Editar "usbconfig.h", esto se explicará en detalle más adelante
  6. Usar comandos "#include" "usbconfig.h" y luego "usbdrv/usbdrv.h"
  7. Asegúrese de que "usbdrv/usbdrv.h" es capaz de encontrar "usbconfig.h", si no es capaz, con el uso "-I" a su "usbdrv/usbdrv.h" makefile o editar para cambiar la ruta del archivo a "usbconfig.h" (a "... / usbconfig.h ")

Entonces el proyecto debe implementar algunas funciones...

  • Usted debe inicializar V-USB y luego activar interrupciones del AVR
  • Es casi una práctica estándar falsa desconexión, esperar unos pocos milisegundos y vuelva a conectar a la computadora durante el arranque el código. Esto hace que el dispositivo y la computadora estén en un estado de "reset" para empezar.
  • Una función de controlador de solicitud debe ser implementado, aunque no realice acciones reales en ella, se debe implementarlo mismo. Buscar "usbFunctionSetup" más adelante.
    • En nuestro ejemplo, tenemos que usar esta función para manejar dos peticiones especiales, lo verás más adelante
  • El pad es un dispositivo HID, un USB HID Descriptor de informe debe ser escrito y ser almacenado en el código

Leer más:

Artículos Relacionados

Controlador Arduino lente - sincronizado Zoom/enfoque con el mando clásico de Wii

Controlador Arduino lente - sincronizado Zoom/enfoque con el mando clásico de Wii

cámara mi Lumix GH2 Micro cuatro tercios no sólo dispara vídeos fantástica alta definición, pero con los adaptadores de bajo costo que pueda utilizar con lentes manual mayores que son baratas y a menudo muy alta calidad. Dispara a un montón de videos
Teensy USB Wii Classic Controller

Teensy USB Wii Classic Controller

Yo soy un fan del Mando clásico de Wii, pero me he no cuidado nunca para mantener los controladores inalámbricos cargada para una pelea ocasional de la nostalgia. ¿No sería genial si puedo usar mi mando clásico de Wii por USB? Se trata de cómo la hic
USB Wii Gamepad usando Arduino Leonardo

USB Wii Gamepad usando Arduino Leonardo

Fin de semana pasado probé el RetroPie nuevo en mi hermosa nueva frambuesa Pi 3, pero el controlador solo juego que tengo es oldie mando clásico de Wii; ¿Cómo puedo convertirlo a un dispositivo de juego USB regular?Después de algunas investigaciones,
Funtendo - un controlador retro multistick para tu PC

Funtendo - un controlador retro multistick para tu PC

Funtendo es un completamente autónomo retro gaming & controlador de sistema para tu PC.Es capaz de usar el mando original Nintendo , el N64 controlador y el controlador Clásico de Wii al mismo tiempo!Funtendo es USB accionado y también contiene una u
Primeros pasos con el ordenador de bolsillo Mini

Primeros pasos con el ordenador de bolsillo Mini

Alrededor de un mes y medio atrás, creé un proyecto llamado la Mini computadora de bolsillo y escribió un Instructable sobre cómo construirlo. Este Instructable tiene todo el proyecto un paso más allá ayudando a comenzar con su Mini computadora de bo
¿Construir tu propio mini computadora de bolsillo

¿Construir tu propio mini computadora de bolsillo

siempre quieren experimentar 70s y 80s computación sin toquetear hardware viejo chirriante y disquetes de 5,25?En este Instructable, te enseñaremos cómo construir y programar tu propio mini computadora de bolsillo.Explorar micro computación con una m
¿Cómo usar un Wiimote como Mouse de su computadora

¿Cómo usar un Wiimote como Mouse de su computadora

alguna vez se preguntó qué cosas interesantes se puede hacer con un Wiimote? Si es así, este es sin duda donde debe iniciar-como un ratón!Paso 1: Paso 1: materiales1. un Wiimote (por supuesto)2. WiiMotionPlus (realmente es construido en algunos nuevo
Cómo jugar backups de Wii desde un dispositivo usb con ningún modchip. ¿

Cómo jugar backups de Wii desde un dispositivo usb con ningún modchip. ¿

Cansado de mala quemaduras de DVD? ¿Wii laser murió hacia fuera en usted? ¿Quieres copiar juegos de Wii directamente desde tu Wii dvd al disco duro? Este instructable es perfecto para usted! Con este instructable, usted será capaz de jugar su favorit
Inalámbrica Wii Nunchuk para ratón USB Stick para PC, Mac y Tablet Video Juegos

Inalámbrica Wii Nunchuk para ratón USB Stick para PC, Mac y Tablet Video Juegos

Listo para sentir como el legendario "Bruce Lee" usando Wireless Wii nunchacos una diversión kung fu PC lucha stickman juego de video conocido como Un dedo muerte Punch (OFDP). ¿Qué tal jugar Jetpack Joyride en Facebook o en tu tableta Android?
Pulsera usb clásico

Pulsera usb clásico

Pulsera de cuero USB clásico.En este instructable voy a mostrarte, cómo hacer tu propia pulsera de unidad flash USB. Usar siempre tus recuerdos, vamos a hacerlo!Paso 1: Material y herramientas MATERIAL:Variación de tela (yo usé 0,5 mm)Cuero (yo usé 1
IPhone Learing mando a distancia Universal con Arduino

IPhone Learing mando a distancia Universal con Arduino

Hola y Bienvenidos a mi primer Instructable.No sé ustedes, pero nunca puedo encontrar el control remoto para mi TV. Siempre parece desaparecer cuando lo necesito y luego sólo aparece días más tarde como cuña dentro del sofá por uno de los niños. Una
NintenWii (o Wiitendo): Wii re-hecho para caso NES

NintenWii (o Wiitendo): Wii re-hecho para caso NES

en este Instructable, voy camino aunque mis pasos de totalmente nuevo trabajo mi Wii para caber dentro de un caso NES de la vieja escuela.Varias veces en este Instructable, te está haciendo referencia a la How-to: hacer un portátil de Wii página de B
Como hacer dispositivo USB (PIC18F)

Como hacer dispositivo USB (PIC18F)

voy a mostrar cómo a la protoboard una simple generic HID USB, creando el firmware PIC18F y finalmente crear la interfaz de Windows para el dispositivo que te permitirá controlar un LED de la PC y leer el estado de un botón del dispositivo.Desde la l
Softmod cualquier Wii (versión 1.0-4.3)

Softmod cualquier Wii (versión 1.0-4.3)

¿qué softmodding hacer un wii?Bien la respuesta a esa pregunta es... puedes jugar copias de seguridad de juegos si perdiste tus juegos originales... (Como hacer) Juegos N64, SNES y SEGA consola en tu wii! Con los emuladores correspondientes... y uste