Código
#include
#include
/*
* WiiChuck torreta--
*
* Cudnik Lucas 2011
*
*/
#include
#include "nunchuck_funcs.h"
int loop_cnt = 0;
Servo s1;
Servo s2;
accx bytes, accy, zbut, cbut;
int ledPin = 13;
void setup()
{
pinMode (11, salida);
Serial.Begin(19200);
nunchuck_setpowerpins();
nunchuck_init(); enviar el protocolo de inicialización
S1.Attach(6);
S2.Attach(8);
Serial.Print ("WiiChuckDemo ready\n");
}
void loop()
{
Si (loop_cnt > 100) {/ / cada 100 milisegundos Obtén nuevos datos
loop_cnt = 0;
nunchuck_get_data();
accx = nunchuck_joyx(); se extiende de aproximadamente 70-182
Accy = nunchuck_joyy(); se extiende de aproximadamente 65-173
zbut = nunchuck_zbutton();
CBUT = nunchuck_cbutton();
int ax = map(accx,30,230,1,180);
int y = map(accy,30,230,1,180);
Serial.Print ("accx:");
Serial.Print((byte)accx,DEC);
Serial.Print ("\taccy:");
Serial.Print((byte)Accy,DEC);
Serial.Print ("\tzbut:");
Serial.Print((byte)zbut,DEC);
Serial.Print ("\tcbut:");
Serial.println((byte)CBUT,DEC);
Serial.Print ("\ax:");
Serial.println((byte)AX,DEC);
Serial.Print ("\ay:");
Serial.println((byte)Ay,DEC);
Si (cbut == 1) {}
S1.Write(90);
S2.Write(90);
}
Si (cbut == 0) {}
Si ((ax<80) o (ax > 100)) {}
S1.Write(AX);
}
Else {}
S1.Write(90);
}
}
Si (cbut == 0) {}
Si ((ay<80) o (ay > 100)) {}
S2.Write(ay);
}
Else {}
S2.Write(90);
}
}
}
Si (zbut == 1) {}
digitalWrite (11, alto);
}
Si (zbut == 0) {}
digitalWrite (11, bajo);
}
loop_cnt ++;
Delay(1);
}