¡Hey! Muchas gracias me has dado una idea de como arreglarlo
#include <Servo.h>
int buttonPin =2;
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
int pos1=90;
int buttonState = 0;
boolean state;
void setup(){
Serial.begin(9600);
servo1.attach(3);
servo2.attach(5);
servo3.attach(6);
servo4.attach(9);
servo5.attach(10);
servo1.write(pos1);
servo2.write(pos1);
servo3.write(pos1);
servo4.write(pos1);
servo5.write(pos1);
pinMode(buttonPin, INPUT);
}
void loop(){
buttonState = digitalRead(buttonPin);
delay(200);
if (buttonState == HIGH ){
state = !state;
}
Serial.print(buttonState);
Serial.println(state);
if (state==true){
servo2.write(0); //contracción cascada
delay(250);
servo4.write(0);
delay(250);
servo5.write(0);
delay(250);
servo3.write(135);
delay(250);
servo1.write(135);
delay(2000);
servo2.write(165);
delay(250);
servo4.write(165);
delay(250);
servo5.write(165);
delay(250);
servo3.write(0);
delay(250);
servo1.write(0);
}
else{
servo2.write(155);//posición normal
servo4.write(155);
servo5.write(155);
servo3.write(0);
servo1.write(0);
}
}
el problema ahora es que al presionar el botón se inicia el loop de //contracción cascada pero vuelve y vuelve a iniciar de manera que no me deja volver a presionar el botón para que suceda el "else //posición normal"
¿como puedo hacer para que se detenga?