Al presionar el botón PM1, el led D1 debe apagarse y el motor 2 debe subir por 2
segundos y parar.
• Después de 1 segundo, se debe encender automáticamente el Motor de
Desplazamiento hacia la izquierda también por 2 segundos y parar.
• Después de 1 segundo, se debe encender automáticamente el Motor 1, el cual debe
bajar también por 2 segundos y parar
Como hago en este caso, hasta ahora voy así, tiene que estar el led aqua prendido y al presionar el boton PM1 debe apagarse;pero eso no sucede, cual es el problema ahi aparte, también debe iniciar todo el motor al presionar PM1, y eso tampoco sucede, necesito su ayuda por favor.
int paq1=0;
int LEDAQUA=9;
int LEDAMARILLO=8;
int MAB2=7;
int MAR2=6;
int MDR=5;
int MIZ=4;
int MAR1=3;
int MAB1=2;
int paquete;
int PM1=12;
void setup() {
pinMode(13,INPUT);
pinMode(12,INPUT);
pinMode(11,INPUT);
pinMode(10,INPUT);
pinMode(9,INPUT);
pinMode(8,INPUT);
pinMode(7,INPUT);
pinMode(6,INPUT);
pinMode(5,INPUT);
pinMode(4,INPUT);
pinMode(3,INPUT);
pinMode(2,INPUT);
Serial.begin(9600);
}
void subirMotor2()
{
digitalWrite(MAR1,LOW);
digitalWrite(MAB1,LOW);
digitalWrite(MAR2,HIGH);
digitalWrite(MAB2,LOW);
digitalWrite(LEDAQUA,LOW);
delay(2000);
}
void pararMotor2()
{
digitalWrite(MAR1,LOW);
digitalWrite(MAB1,LOW);
digitalWrite(MAR2,LOW);
digitalWrite(MAB2,LOW);
delay(1000);
}
void desplazamientoizquierdaMotor()
{
digitalWrite(MIZ,HIGH);
digitalWrite(MAB1,LOW);
digitalWrite(MAR2,LOW);
digitalWrite(MAB2,LOW);
delay(2000);
}
void pararMotor()
{
digitalWrite(MIZ,LOW);
digitalWrite(MAB1,LOW);
digitalWrite(MAR2,LOW);
digitalWrite(MAB2,LOW);
delay(1000);
}
void bajarMotor1()
{
digitalWrite(MAB1,HIGH);
digitalWrite(MAR1,LOW);
digitalWrite(MAR2,LOW);
digitalWrite(MAB2,LOW);
delay(2000);
}
void detenerMotor1()
{
digitalWrite(MAB1,LOW);
digitalWrite(MAR1,LOW);
digitalWrite(MAR2,LOW);
digitalWrite(MAB2,LOW);
delay(1000);
}
int leerPM1;
int leerLEDD1;
int leerPM2;
void loop() {
leerPM1 = digitalRead(PM1);
Serial.println("Presione PM1 para inicio de secuencia");
while(leerPM1 == 0)
{
leerPM1 = digitalRead(PM1);
digitalWrite(LEDAQUA,HIGH);
}
subirMotor2();
delay(2000);
while(leerPM1 == 0)
{
leerPM1 = digitalRead(PM1);
pararMotor2();
delay(1000);
desplazamientoizquierdaMotor();
delay(2000);
pararMotor();
delay(1000);
bajarMotor1();
delay(2000);
detenerMotor1();
delay(1000);
}
Serial.println("Saliste del motor");
delay(5000);
}