Go Down

Topic: ArduinoMotor (Read 76 times) previous topic - next topic

danvillalobos6

Hola! Necesito un poco de ayuda
Son 3 botones, 3 leds, 1 motor.

Con el "boton 1" enciendo el motor y hago que gire hacia la derecha y asu vez que prenda un led verde (indicando que esta hacia la derecha)

Paro el programa.

AHORA Con el "boton 2" enciende el motor y hago que gire hacia la izquierda y asu vez que prenda un led amarillo. (indicando que esta hacia la izquierda)

DUDAS:
1.-Como hacer que el ultimo "boton 3" que sea el de "PARO"  tanto como de motor, de leds y de todo.
2.-Como poner una condiciĆ³n  que cuando este activo el "boton 1" no puedan activar el "boton 2" hasta que HAGAN EL PARO gracias!

MI CODIGO DE ARDUINO

int botonDerecha = 2;
int botonIzquierda = 3;
int Paro = 4;
int contador;
boolean giroIzquierda = 0;
boolean giroDerecha = 0;

void setup() {

  pinMode(botonIzquierda, INPUT);
  pinMode(botonDerecha, INPUT);
  pinMode(Paro, INPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);

}

void loop() {
  if (digitalRead(botonDerecha) == HIGH && (digitalRead(12) == LOW) && (digitalRead(5) == LOW))


  {
    digitalWrite(12, HIGH);
    delay(500);
    digitalWrite(5, HIGH);
    delay(500);

  }
  if (digitalRead(botonIzquierda) == HIGH && (digitalRead(13) == LOW) && (digitalRead(6) == LOW))


  {
    digitalWrite(13, HIGH);
    delay(500);
    digitalWrite(6, HIGH);
    delay(500);

  }
  if (digitalRead(Paro) == HIGH && (digitalRead(13) == LOW) && (digitalRead(7) == LOW)&&(digitalRead(botonIzquierda) == HIGH)
  &&(digitalRead(botonDerecha) == HIGH)&&(digitalRead(12) == HIGH) && (digitalRead(5) == HIGH)&&(digitalRead(13) == HIGH) && (digitalRead(6) == HIGH))
{ // <------- BOTON DE PARO (aun no me sale)
  else{
    digitalWrite(13, LOW);
    delay(500);
    digitalWrite(6, LOW);
    delay(500);
    digitalWrite(12, LOW);
    delay(500);
    digitalWrite(5, LOW);
    delay(500);
    digitalWrite(botonDerecha, LOW);
    delay(100);
    digitalWrite(botonIzquierda, LOW);
    delay(100);
    digitalWrite(13, LOW);
    delay(100);
    digitalWrite(7, HIGH);
    delay(500);

  }
}

Go Up