
Bufff, veo que nadie lo a realizado y puede ayudarme...............
Dejo el codigo que he utilizado para poder encender los leds con el mando, depende como lo muevas se encienden mas leds.
Si alguien me dice por favor partiendo aunque sea de este codigo si se puede que tengo que modificar para mover los servos en vez de encender los leds.
este es el codigo::
#include <wiichuk.h>
#include <WiiChuck.h>
#include <Wire.h>
int cnt;
WiiChuck chuck = WiiChuck();
//Setup de la aplicacion
void setup() {
cnt=13;
int i;
Serial.begin(9600);
chuck.begin();
chuck.update();
for(i=4;i<14;i++){
pinMode(i,OUTPUT);
}
}
//Funcion para encender los leds
void visualizar (int val){
int i;
val=12-val;
for(i=val;i>3;i--)digitalWrite(i,LOW);
for(i=12;i>val;i--){
digitalWrite(i,HIGH);
delay(2);
}
}
void loop() {
byte valor;
int roll,pitch;
int Z;
chuck.update();
// Visualizacion de valores
valor = chuck.joyX;
roll = chuck.readRoll();
pitch = chuck.readPitch();
Serial.print("\nValor: ");
Serial.print(valor,DEC);
Serial.print(" Roll: ");
Serial.print(roll,DEC);
Serial.print(" Pitch: ");
Serial.print(pitch,DEC);
//Encender leds por inclinacion
if (roll>=0&&roll<10){
visualizar(0);
}
else if (roll>=10&&roll<20){
visualizar(1);
}
else if (roll>=20&&roll<30){
visualizar(2);
}
else if (roll>=30&&roll<40){
visualizar(3);
}
else if (roll>=40&&roll<50){
visualizar(4);
}
else if (roll>=50&&roll<60){
visualizar(5);
}
else if (roll>=60&&roll<70){
visualizar(6);
}
else if (roll>=70&&roll<80){
visualizar(7);
}
else if (roll>80&&roll<90){
visualizar(

;
}
else if (roll>90&&roll<100){
visualizar(9);
}
else if(roll<0 || roll>100){
visualizar(0);
}
delay(50);
//encender el led integrado al pulsar Z del mando
Z = chuck.buttonZ;
if (Z==1){
digitalWrite(13,HIGH);
}
else{
digitalWrite(13,LOW);
}
}
Gracias de nuevo..