como activar un ciclo for con un interruptor

buen dia, tengo la programación para mover un motor a pasos en Arduino uno, también cuento con el driver del motor, ya logre hacer que se mueva para un lado u otro, quisiera poder activar este movimiento con un botón, me podrían ayudar??

int PUL=7; //Pin para la señal de pulso
int DIR=6; //define Direction pin
int EN=5; //define Enable Pin

void setup() {
pinMode (PUL, OUTPUT);
pinMode (DIR, OUTPUT);
digitalWrite(EN,HIGH);

}

void loop() {


 digitalWrite(DIR,LOW);
for (int i=0; i<8000; i++)    //Forward i steps
{
  digitalWrite(PUL,HIGH);
  delayMicroseconds(172);
  digitalWrite(PUL,LOW);
  delayMicroseconds(172);
}
delay(1000);
digitalWrite(DIR,HIGH);

for (int i=0; i<8000; i++)   //Backward i steps
{
  digitalWrite(PUL,HIGH);
  delayMicroseconds(172);
  digitalWrite(PUL,LOW);
  delayMicroseconds(172);
}
 delay(1000);
}

Lee las normas y edita tu post usando etiquetas.

Hola ramonhassaf, un boton significa que un determinado pin del arduino recibe un HIGH o un LOW. (busca sobre pull up y pull down)

Luego supongamos que dicho pin recibe HIGH cuando pulsas el boton, entonces con un condicional 'if' por ejemplo

if (digitalRead (2) == HIGH) { // o sea lo has conectado al pin 2

// luego aqui pones lo que tu quieras hacer solo cuando cumple
// la condicion de presionar el boton.
// recuerda aqui solo entra una vez ejecuta lo pedido y luego sale

}

Ve a documentación y mira el tutorial de victorjam sobre Como NO leer un botón y como SI debemos hacerlo.