motor paso a paso

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x3F, 16, 2);

#include <Keypad.h>

#include<Stepper.h>
#define STEPS 240
Stepper stepper(STEPS,7,6,5,4);

int velocidad ;

long tiempodeparo ;
int bucle;
int i=1;

long numero;
int n;
int valor;
char tecla;

const byte FILAS = 4; //four rows
const byte COLUMNAS = 4; //three columns

char keys[FILAS][COLUMNAS] = {
{‘1’, ‘2’, ‘3’, ‘A’},
{‘4’, ‘5’, ‘6’, ‘B’},
{‘7’, ‘8’, ‘9’, ‘C’},
{’*’, ‘0’, ‘#’, ‘D’},
};

byte PINESFILAS[FILAS] = {22,23,24,25}; //¬connect to the row pinouts of the keypad
byte PINESCOLUMNAS[COLUMNAS] = {26,27,28,29}; //connect to the column pinouts of the keypad

Keypad TECLADO = Keypad( makeKeymap(keys), PINESFILAS, PINESCOLUMNAS, FILAS, COLUMNAS );

void setup() {
stepper.setSpeed(velocidad);

lcd.init();
lcd.backlight();
bienvenida();
delay(1000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“PULSE UNA TECLA:”);
lcd.setCursor(0,1);
lcd.print(“A:V B:E C:MA D:PI”);
delay(100);
}

void loop() {
tecla = TECLADO.getKey();
switch (tecla) {
case ‘A’:
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“NUEVA VELOCIDAD:”);
delay(500);
velocidad = reemplazarvariable();
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“LA NUEVA VELOCIDAD”);
lcd.setCursor(0,1);
lcd.print("ES: ");
lcd.print(velocidad);
delay(2500);
NUEVAS_INSTRUCCIONES();
break;
case ‘B’:
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“NUEVO DESCANSO:”);
delay(500);
tiempodeparo = reemplazarvariable();
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“EL NUEVO DESCANSO”);
lcd.setCursor(0,1);
lcd.print("ES: ");
lcd.print(tiempodeparo);
delay(2500);
NUEVAS_INSTRUCCIONES();
break;
case ‘C’:

lcd.clear();
lcd.setCursor(0,0);
lcd.print(“NUEVO de veces:”);
delay(500);
bucle = reemplazarvariable();
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“numero de veces”);
lcd.setCursor(0,1);
lcd.print("ES: ");
lcd.print(bucle);
delay(2500);
NUEVAS_INSTRUCCIONES();
break;

case ‘D’:
if(i <=bucle){
lcd.clear();
lcd.print(“ejecutando”);
lcd.setCursor(0, 1);
lcd.print(“programa”);

stepper.step(-2400);
delay(tiempodeparo); //Pequeña pausa

//Girar una vuelta entera en sentido contrario
stepper.step(2400);
delay(tiempodeparo); //Pequeñ
i=i+1;
}
else{
lcd.clear();
lcd.print(“finalizado”);
}

NUEVAS_INSTRUCCIONES();
break;
}
delay(100);
}

void bienvenida() {
lcd.setCursor(0, 0);
lcd.print(“BIENVENIDO”);
lcd.setCursor(0, 1);
lcd.print(“LIC.VILCHERREZ”);
}

void guardar() {
valor = convertir(tecla);
numero = numero * 10 + valor;
lcd.setCursor(n, 1);
lcd.print(valor);
n = n + 1;
}

void borrar() {
n = (n == 0) ? 0 : n - 1;
numero = (numero - valor) / 10;
lcd.setCursor(n, 1);
lcd.print(" ");
}

int reemplazarvariable() {
numero = 0;
n = 0;
while (tecla != ‘#’ ) {
tecla = TECLADO.getKey();
if( tecla != 0){
if (tecla != ‘A’ && tecla != ‘B’ && tecla != ‘C’ && tecla != ‘D’ && tecla != ‘’ && tecla != ‘#’) {
guardar();
}
if (tecla == '
’) {
borrar();
}
delay(200);
}
}
return numero;
}

int convertir( char teclap){
switch(teclap){
case ‘1’:return 1;
break;
case ‘2’:return 2;
break;
case ‘3’:return 3;
break;
case ‘4’:return 4;
break;
case ‘5’:return 5;
break;
case ‘6’:return 6;
break;
case ‘7’:return 7;
break;
case ‘8’:return 8;
break;
case ‘9’:return 9;
break;
case ‘0’:return 0;
break;
}
}
void NUEVAS_INSTRUCCIONES(){
lcd.clear();
lcd.print(“ESPERANDO NUEVAS”);
lcd.setCursor(0, 1);
lcd.print(“INSTRUCCIONES”);
delay(1500);
lcd.print(“PULSE UNA TECLA:”);
lcd.setCursor(0,1);
lcd.print(“A:V B:E C:MA D:PI”);
delay(100);
}

Por favor repasa las normas del foro y modifica tu post para mostrar el codigo correctamente.A parte de esto ,cual es la duda ?

Ademas de postear de acuerdo a las normas como bien te ha señalado jose estas tan ocupado que no puedes escribir un par de líneas explicando lo que estas intentando hacer?