Hola buenas,
Tengo un problema con Arduino Yun la cosa es que, tengo un Sketch que controla un Stepper a través del Nunchuk de la Wii, y resulta que todo funcionaba a la perfección con Arduino UNO, pero recientemente me ha llegado la Arduino YUN y no entiendo porqué pero el Sketch no funciona con YUN no hace nada ni tan siquiera mueve el Stepper, y por separado tampoco me detecta ni el Nunchuk ni mueve el motor ni hace nada de eso y me gustaría saber que modificaciones debería hacerle al siguiente Sketch, o como debería hacerlo para que funcionase.
Gracias!!!
Sketch:
#include <Wire.h>
#include <WiiChuck.h>
#include <Stepper.h>
const int ppr = 200;//passos totals per fer una volta
Stepper stepper1(ppr, 12,13);
WiiChuck chuck = WiiChuck();
const int pwmA = 3;
const int pwmB = 11;
const int brakeA = 9;
const int brakeB = 8;
const int dirA = 12;
const int dirB = 13;
int vel = 40;
void setup() {
Serial.begin(115200);
chuck.begin();
chuck.update();
pinMode(pwmA, OUTPUT);
pinMode(pwmB, OUTPUT);
pinMode(brakeA, OUTPUT);
pinMode(brakeB, OUTPUT);
digitalWrite(pwmA, HIGH);
digitalWrite(pwmB, HIGH);
digitalWrite(brakeA, LOW);
digitalWrite(brakeB, LOW);
stepper1.setSpeed(50);
}
void loop() {
delay(20);
chuck.update();
Serial.print(chuck.readJoyY());
Serial.print(", ");
Serial.println();
if(chuck.readJoyY() > 7 && chuck.readJoyY() < 40){
stepper1.setSpeed(10);
stepper1.step(1);
}
else if(chuck.readJoyY() > 40 && chuck.readJoyY() < 60){
stepper1.setSpeed(vel);
stepper1.step(5);
if(vel<30){
vel++;
}
}
else if(chuck.readJoyY() > 60 && chuck.readJoyY() < 80){
stepper1.setSpeed(80);
stepper1.step(10);
}
else if(chuck.readJoyY() > 80 ){
stepper1.setSpeed(100);
stepper1.step(15);
}
else if(chuck.readJoyY() < -30 && chuck.readJoyY() > -50){
stepper1.setSpeed(40);
stepper1.step(-1);
}
else if(chuck.readJoyY() < -50 && chuck.readJoyY() > -80){
stepper1.setSpeed(60);
stepper1.step(-5);
}
else if(chuck.readJoyY() < -80 && chuck.readJoyY() > -100){
stepper1.setSpeed(80);
stepper1.step(-10);
}
else if(chuck.readJoyY() < -100){
stepper1.setSpeed(100);
stepper1.step(-15);
}
else
stepper1.step(0);
}