Pues veo que no estas aprendiendo asi que lo diré con paciencia.
Cuando compilas si te da errores corresponde que copies y pegues los errores. Mira en tu caso,
C:\Users\surby\AppData\Local\Temp\.arduinoIDE-unsaved202407-11036-1mk5j1o.2xw4\sketch_jan7b\sketch_jan7b.ino:23:11: error: 'buttonPin' was not declared in this scope
pinMode(buttonPin, INPUT);
Ahi dice
error: 'buttonPin' was not declared in this scope
pinMode(buttonPin, INPUT);
buttonPin no ha sido declarado en este sketch.
Como tu no pusiste todo el código yo inventé esa variable o constante.
En tu caso se llama
const int inputPin = 12;
No se te ocurrió que eran la misma? Evidentemente no.
Bueno acá todo corregido
int IN1=0;
int IN2=1;
int IN3=2;
int IN4=3;
int IN5=4;
int IN6=5;
int IN7=6;
int IN8=7;
const int inputPin = 12;
int estado = 0;
int buttonState = 0;
int buttonStateAnt = 0;
int demora=20; //eSto es la demora entre pasos, no debe ser superior a 10 ms.
void setup() {
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(IN5, OUTPUT);
pinMode(IN6, OUTPUT);
pinMode(IN7, OUTPUT);
pinMode(IN8, OUTPUT);
pinMode(inputPin, INPUT);
}
void loop() {
buttonState = digitalRead(inputPin);
if (buttonState == HIGH && buttonStateAnt == LOW) {
estado = 1 - estado;
{
for (int i = 0; i < 42; i = i + 1) //512*4 = 2048 pasos HACIA DELANTE
{
digitalWrite(IN1, HIGH); // PASO 1 1 pierna
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
digitalWrite(IN5, HIGH); // PASO 1 2 PIERNA
digitalWrite(IN6, LOW);
digitalWrite(IN7, LOW);
digitalWrite(IN8, LOW);
delay(demora);
digitalWrite(IN1, LOW); // PASO 2 1 pierna
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
digitalWrite(IN5, LOW); // PASO 2 2 pierna
digitalWrite(IN6, HIGH);
digitalWrite(IN7, LOW);
digitalWrite(IN8, LOW);
delay(demora);
digitalWrite(IN1, LOW); // PASO 3 1 PIERNA
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
digitalWrite(IN5, LOW); // PASO 3 2 PIERNA
digitalWrite(IN6, LOW);
digitalWrite(IN7, HIGH);
digitalWrite(IN8, LOW);
delay(demora);
digitalWrite(IN1, LOW); // PASO 4 1 PIERNA
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
digitalWrite(IN5, LOW); // PASO 4 2 PIERNA
digitalWrite(IN6, LOW);
digitalWrite(IN7, LOW);
digitalWrite(IN8, HIGH);
delay(demora);
}
digitalWrite(IN1, LOW); // DESCANSO DE BOBINAS EN PIERNA 1
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
digitalWrite(IN1, LOW); // DESCANSO DE BOBINAS EN PIERNA 2
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
delay(5000);
for (int i = 42; i >= 0; i = i - 1) //512*4 = 2048 pasos LEVANTAMOS PIERNA
{
digitalWrite(IN1, LOW); // PASO 4 PIERNA1
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
digitalWrite(IN5, LOW); // PASO 4 PIERNA2
digitalWrite(IN6, LOW);
digitalWrite(IN7, LOW);
digitalWrite(IN8, HIGH);
delay(demora);
digitalWrite(IN1, LOW); // PASO 3 PIERNA 1
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
digitalWrite(IN5, LOW); // PASO 3 PIERNA 2
digitalWrite(IN6, LOW);
digitalWrite(IN7, HIGH);
digitalWrite(IN8, LOW);
delay(demora);
digitalWrite(IN1, LOW); // PASO 2 PIERNA 1
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
digitalWrite(IN5, LOW); // PASO 2 PIERNA 2
digitalWrite(IN6, HIGH);
digitalWrite(IN7, LOW);
digitalWrite(IN8, LOW);
delay(demora);
digitalWrite(IN1, HIGH); // PASO 1 PIERNA1
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
digitalWrite(IN5, HIGH); // PASO 1 PIERNA 2
digitalWrite(IN6, LOW);
digitalWrite(IN7, LOW);
digitalWrite(IN8, LOW);
delay(demora);
}
digitalWrite(IN1, LOW); // PASO 2
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
delay(5000);
exit(0);
}
} else {
exit(0);
}
}
Ya me dirás si funciona o no.