hola estoy utilizando un motor nema 17 y el driver a4988 con el codigo que adjunto abajo , donde un motor se dirige a una direccion , espera 4 segundos y regresa a otra direccion.yo necesitaria qeu se comporte asi sin el "for", para incluirlo dentro de un condicional . intente sacarlo del for
"reemplazar por ejemplo "for(int x = 0; x < 25; x++)" por x= 25; pero no funciona no cambia la direccion despues..
const int steppin = 10; // declaramos el pin 10 del arduino como step
const int dirpin = 12; // declaramos el pin 12 del arduino con dir
const int tiempo = 10; // declaramos la variable tiempo como (5 milisegundos)
void setup() {
pinMode(steppin,OUTPUT); // declaramos como salidas
pinMode(dirpin,OUTPUT); // declaramos como salida
;
////////////////////////////////////////// //////////////////////////////////////////////////
digitalWrite(dirpin,HIGH); // ponemos en alto o 1 logico a pin dir para que gire hacia un sentido
for(int x = 0; x < 25; x++){ // creamos un lazo for , en nuetro caso el motor es de 200 paso, para dar una vuelta !
digitalWrite(steppin,HIGH); // las intrucciones que se encuntran dentro del lazo
delay(tiempo); // son las que aran que nuestro motor se mueva ,es la parte donde van los pulsos
digitalWrite(steppin,LOW); // necesarios para que el motor se mueva
delay(tiempo);
}
delay(4000);
digitalWrite(dirpin,LOW); // pones en bajo , o en 0 logico para que gire el el sentido opuesto
for(int x = 0; x < 280; x++) // entramos a un nuevo lazo pero ahora la unica diferencia es que
{ // que dara 400 pasos o 2 vueltas de 360 grados lo demas es igual !
digitalWrite(steppin,HIGH);
delay(tiempo);
digitalWrite(steppin,LOW);
delay(tiempo);
}