Arduino Wii nunchuck y Wii motion plus con actualizado código IDE 1.0.2 y LEDs (4 / 7 paso)

Paso 4: El código

Primero debe probar el Wii motion Plus, si funciona entonces sólo tiene que conectar el nunchuck de la Wii y va a trabajar también.
Nota: tengo el código original de esta página web:

http://Arduino.CC/Forum/index.php/Topic, 8507.0.html
No hago el código que fija sólo para ser capaces de funcionar en el nuevo IDE de Arduino 1.0.2. y he añadido el nuevo código para la
LED, todos los créditos son para knuckles904.

OK, primero necesitas ir a tu librería de arduino y encontrar la alfombra de alambre después de ir a la utilidad y buscar abrir el archivo twi.h
con wordpad y borrar las líneas de //#define ATMEGA8 #endinf y pegar estas líneas en su lugar:
#define ATMEGA8

#ifndef CPU_FREQ ^ M
#define CPU_FREQ L 16000000
#endif

#ifndef TWI_FREQ ^ M
#define TWI_FREQ 100000L
#endif

Guardar el archivo de twi.h y ahora abre tu arduino IDE y copia y pega el código:

#include < Wire.h >
datos del octeto [6]; bytes de datos de seis
int yaw, pitch, roll; tres ejes
int yaw0, pitch0, roll0; calibración de ceros

void wmpOn() {}
Wire.beginTransmission(0x53); WM + comienza desactivado en la dirección 0x53
Wire.Write(0xFE); enviar 0 x 04 a dirección 0xFE para activar el WM +
Wire.Write(0x04);
Wire.endTransmission(); WM + salta a la dirección 0x52 y ahora está activado
}

void wmpSendZero() {}
Wire.beginTransmission(0x52); ahora en la dirección 0x52
Wire.Write(0x00); enviar cero para indicar que queremos información
Wire.endTransmission();
}

void calibrateZeroes() {}
para (int i = 0; i < 10; i ++) {}
wmpSendZero();
Wire.requestFrom(0x52,6);
para (int i = 0; i < 6; i ++) {}
Data[i]=WIRE.Read();
}
yaw0 += (((datos [3] >> 2) << 8) + datos [0]) / 10; promedio de 10 lecturas
pitch0 += (((datos [4] >> 2) << 8) + datos [1]) / 10;
roll0 += (((datos [5] >> 2) << 8) + datos [2]) / 10;
}
Serial.Print("Yaw0:");
Serial.Print(yaw0);
Serial.Print ("Pitch0:");
Serial.Print(pitch0);
Serial.Print ("Roll0:");
Serial.println(roll0);
}

void receiveData() {}
wmpSendZero(); enviar cero antes de cada solicitud (igual como nunchuck)
Wire.requestFrom(0x52,6); solicitar los seis bytes desde el WM +
para (int i = 0; i < 6; i ++) {}
Data[i]=WIRE.Read();
}
desvío = ((datos [3] >> 2) << 8) + datos [0]-yaw0;
pitch = ((datos [4] >> 2) << 8) + datos [1]-pitch0;
rodillo = ((datos [5] >> 2) << 8) + datos [2]-roll0;
}
Ver http://wiibrew.org/wiki/Wiimote/Extension_Controllers#Wii_Motion_Plus
para información sobre lo que representa cada byte
void setup() {}
Serial.Begin(115200);
Serial.println ("WM + probador");
Wire.Begin();
wmpOn(); encender WM +
calibrateZeroes(); calibrar los ceros
Delay(1000);

pinMode (11, salida);
pinMode (12, salida);
pinMode (10, salida);
pinMode (9, salida);
pinMode (8, salida);
pinMode (7, salida);
}

void loop() {}
receiveData(); recibir datos y calcular pitch yaw roll
Serial.Print ("yaw:"); //see diagrama de randomhacksofboredom.blogspot.com
Serial.Print(Yaw); para información sobre que eje es que
Serial.Print ("pitch:");
Serial.Print(pitch);
Serial.Print ("roll:");
Serial.println(roll);
Delay(100);

Si (pitch > = 1000) {}
digitalWrite(12,HIGH);

}

else if (pitch < = -1000) {}
digitalWrite(11,HIGH);

}
else if (yaw > = 1000) {}
digitalWrite(10,HIGH);

}

else if (yaw < = -1000) {}
digitalWrite(9,HIGH);

}
else if (roll > = 1000) {}
digitalWrite(8,HIGH);

}

else if (rollo < = -1000) {}
digitalWrite(7,HIGH);

}
Else {}
digitalWrite(11,LOW);
digitalWrite(12,LOW);
digitalWrite(10,LOW);
digitalWrite(9,LOW);
digitalWrite(8,LOW);
digitalWrite(7,LOW);
}
}

Artículos Relacionados

Cómo desmontar y reparar el módulo Wii Motion Plus.

Cómo desmontar y reparar el módulo Wii Motion Plus.

INTRO: uno de mis mandos de Wii por mantiene moviéndose al azar en una dirección que tenía el Wii Motion Plus.  Con la tirada de monja instalado, si presioné el empalme de la conexión a una dirección que podría funcionar, pero en cuanto suelto, se mu
Monitor de flujo de agua - Arduino Powered del Laser del CO2 / Windows con control

Monitor de flujo de agua - Arduino Powered del Laser del CO2 / Windows con control

Alarma y Monitor de flujo de agua de láser de CO2Accionado por un Arduino y controlados por software a la medida de un PC con WindowsPara alargar la vida de un CO2 tubo del laser es necesario bomba de enfriamiento de agua a través de él mientras está
RatPhone - 3 G FONA Arduino celular teléfono celular móvil con teclado botón Retro y rata de captura de la aplicación

RatPhone - 3 G FONA Arduino celular teléfono celular móvil con teclado botón Retro y rata de captura de la aplicación

No importa el iPhones y Androids. Aquí está el ratPhone! NO se es definitivamente de un teléfono inteligente. Pero no es un estúpido teléfono. Usted no podrá perder horas interminables en Facebook o Twitter, pero le ayudará a atrapar las ratas y otra
Arduino OLED termómetro e higrómetro con DHT11 para principiantes

Arduino OLED termómetro e higrómetro con DHT11 para principiantes

¡ Hola! Voy a mostrarte cómo hacer un Arduino OLED termómetro e higrómetro * con DHT11.El OLED que utilizamos hoy en día es 1.3″ pulgadas en tamaño, características 128 × 64 píxeles y usa el Bus SPI. En el siguiente paso encontrará más información út
Añadir soporte de Arduino a ESP8266 con el código de prueba de muestra

Añadir soporte de Arduino a ESP8266 con el código de prueba de muestra

ESP8266 paquetes de un montón de golpe. No es sólo un módulo de WiFi, también tiene un regulador micro decente en construido. Ahora la mejor parte es la comunidad ha hecho programar este microcontrolador incorporado muy fácil añadiendo soporte de Ard
Lector de RFID de AVR/Arduino con UART código en C

Lector de RFID de AVR/Arduino con UART código en C

RFID es la manía, en todas partes - desde sistemas de inventario hasta sistemas de identificación de la placa. Si alguna vez has estado en una tienda por departamentos y anduvo por esas cosas de apariencia de detector de metal en los puntos de entrad
Arduino controla intermitente hadas luces de Navidad con Jingle Bells

Arduino controla intermitente hadas luces de Navidad con Jingle Bells

como mi primer proyecto de Arduino que quería hacer algo impresionante pero no demasiado difíciles. Entré en un Hack de Navidad con este proyecto y lo ganó! La gente le encanta las luces de Navidad.Al final de este tienes un juego de luces de hadas d
[Proyecto Arduino] #Remote monitoreo de ultrasonido Sensor valor con ioShield-A & Cloud Server

[Proyecto Arduino] #Remote monitoreo de ultrasonido Sensor valor con ioShield-A & Cloud Server

Mi post explica cómo supervisar el valor del sensor ultrasónico usando Arduino, ioShield-A & Xively servidor.Tablero de Arduino Uno se utiliza para controlar todo el sistema y medir el valor del sensor. Estoy usando ioShield-A (que se basa de W5500)
InPace - un Arduino basado en datos GPS fitness pulsera con bluetooth y una app de iOS

InPace - un Arduino basado en datos GPS fitness pulsera con bluetooth y una app de iOS

InPace es una muñequera de fitness basado en Arduino, con una aplicación de iOS que lo acompaña, que puede proporcionar feedback directo sobre cómo el usuario es ellos mismos de estimulación durante una carrera, caminata o ciclismo de ruta. Realiza u
Modificación de los códigos en un HC-05 con el código ZS-040 que tiene el pasador EN vez de pasador

Modificación de los códigos en un HC-05 con el código ZS-040 que tiene el pasador EN vez de pasador

Durante la búsqueda sobre cómo modificar la configuración en el HC-05 llegó a ser obvio que varias de las tablas que tenían números diferentes a la mayoría de los tutoriales que he encontrado. La que voy a estar trabajando aquí es el HC-05 con un cód
Controlador Arduino Wii Nunchuck

Controlador Arduino Wii Nunchuck

Cómo controlar 2 servos piensa el nunchuck de wii.Paso 1: partes Wii nunchuckArduino2 servosProtoboardCables de puentePaso 2: conectar Conecte el nunchuck de wii como este esquema.Paso 3: Añadir el códigoPaso 4: hacer!!!!!! Ahora puede controlar el p
Arduino / Wii control torreta de cohetes Lego Star Wars

Arduino / Wii control torreta de cohetes Lego Star Wars

placa Arduino un recibe datos desde un Wii Nunchuck y lo envía a res servos: x, y, gatillo. Se ha añadido un láser independiente para apuntar. Actualmente es muy inestable debido a los servos baratos usados.Paso 1: construcción La torreta cohete fue
Ejecutar copias de seguridad en cualquier Wii sin Modchip a (actualizado)

Ejecutar copias de seguridad en cualquier Wii sin Modchip a (actualizado)

Aviso: acabo de actualizar el instructivo, si hay algún error, me dice. Yo se editar mi instructables para la próxima semana o tan.La primera versión de este instructable era muy anticuada y los DVD fueron realmente molestos.En esta versión, usted ca
Haciendo ApplePi, fusión Vintage Macintosh Plus con la frambuesa Pi

Haciendo ApplePi, fusión Vintage Macintosh Plus con la frambuesa Pi

Como un niño de finales de los 70 y estudiante de la escuela primaria de los años 80, siempre he estado fascinado por estas cajitas beige y platino y sus pequeñas pantallas B & W. Algunos apareció al lado de los animales domésticos Commodore y Apple]