Ver Cesta de la Compra
Vaya al Contenido

Adaptador mando NUNCHUK de la Wii

Arduino > shelds
El Wiichuck,  es un mando adicional para la consola Wii. El mando emplea el bus I2C, por lo que resulta sencillo conectar este mando a nuestro Arduino para tener un control de mano para nuestros proyectos.
El Wiichuck esta compuesto de un acelerómetro de tres ejes, una palanca analógica de 2 ejes y dos botones en un dispositivo pequeño y ergonómico. Al ser fabricado en grandes cantidades para nintendo ha permitido que esté disponible en precios bajos.
El Nunchuk se conecta al mando primario de la Wii por medio de un cable. Podemos cortar este cable y conectarlo a Arduino o, comprar el adaptador disponible en la tienda que se insertan en el conector del Wiichuck y permiten conectarlo sin dañarlo.
El Wii Nunchuk es un mando genial para añadir a nuestros proyectos. Por ejemplo, podemos usarlo para controlar un Zowi con servos, manejar un brazo robótico, un vehículo robot,  o lo que se nos ocurra.
Módulo GPS
Módulo GPS
Hay algunas librerías que nos van a facilitar mucho la programación. Hay varias aunque todas son bastante parecidas, pero nosotros hemos utilizado esta: WiiNunchuck
Solamente hay que descomprimir el fichero zip y dentro de la carpeta esta todo lo necesario para compilar, adicionalmente se puede instalar copiando la carpeta descargada dentro de la carpeta “libraries” que está en el directorio en el que instalasteis el IDE.
Con el ejemplo podemos ver en el monitor serie las medidas del joystick y si los botones están pulsados o no.
Como veréis, la programación es muy sencilla gracias a la librería que estamos utilizando.
Módulo GPS
Complementos
1,75 €
Añadir
CODIGO DE EJEMPLO
#include "Wire.h"                            //Libreria I2C
#include "WiiNunchuck.h"                     //Libreria WiiNunchuck

WiiChuck chuck = WiiChuck();                 //Creamos la instancia de WiiNunchuck

void setup() {
 Serial.begin(9600);                      
 chuck.begin();                           //Iniciamos WiiNunchuck

}

void loop() {
 delay(20);
 chuck.update();                         //Actualizamos valores

 Serial.print("Eje X: ");   Serial.print(chuck.readJoyX()); //Eje X del Joystick
 Serial.print("   ");
 Serial.print("Eje Y: ");   Serial.print(chuck.readJoyY()); //Eje Y del Joystick
 Serial.print("   ");
 
 if (chuck.buttonZ){Serial.print("Z");}          //Boton Z
 else{ Serial.print("-");}

 Serial.print("   ");
 
 if (chuck.buttonC){Serial.println("C");}       //Boton C
 else{Serial.println("-");}
}

Regreso al contenido | Regreso al menu principal