Código para brazo robótico

soy adulto mayor y estoy tratando de aprender arduino...estoy haciendo un brazo robotico...la base la controla un motor paso a paso unipolar de 5 hilos controlado por 2 botones que funcionan bien...necesito ayuda para agregar 3 servos para controlar las demas secciones del brazo.. estos servos quiero controlarlos con dos botones cada uno.....el codigo que tengo es:

int pulsador = 0;
int entrada = 2;
int pulsador1 = 0;
int entrada1 = 3;

int motorPin1 = 8;                  // Pines del Motor 8,9,10,11
int motorPin2 = 9;
int motorPin3 = 10;
int motorPin4 = 11;
int delayTime1 = 5;                       // delayTime1 determina la velocidad de giro entre uno y otro paso

void setup() {
  pinMode(entrada, INPUT);   // Pin del botón izquierdo
  pinMode(entrada1, INPUT);  // Pin del botón derecho
  pinMode(motorPin1, OUTPUT);             
  pinMode(motorPin2, OUTPUT);
  pinMode(motorPin3, OUTPUT);
  pinMode(motorPin4, OUTPUT);
}

void loop() {
  // Botón izquierdo - Gira hacia la izquierda
  pulsador = digitalRead(entrada);
  if (pulsador == LOW) {
    // Mueve el motor hacia la izquierda
    Serial.println("Botón izquierdo presionado");
    digitalWrite(motorPin1, HIGH);
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, HIGH);
    delay(delayTime1);

    digitalWrite(motorPin1, HIGH);
    digitalWrite(motorPin2, HIGH);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, LOW);
    delay(delayTime1);

    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, HIGH);
    digitalWrite(motorPin3, HIGH);
    digitalWrite(motorPin4, LOW);
    delay(delayTime1);

    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, HIGH);
    digitalWrite(motorPin4, HIGH);
    delay(delayTime1);
  }

  // Botón derecho - Gira hacia la derecha
  pulsador1 = digitalRead(entrada1);
  if (pulsador1 == LOW) {
    // Mueve el motor hacia la derecha
    Serial.println("Botón derecho presionado");
    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, HIGH);
    delay(delayTime1);

    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, HIGH);
    digitalWrite(motorPin4, HIGH);
    delay(delayTime1);

    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, HIGH);
    digitalWrite(motorPin3, HIGH);
    digitalWrite(motorPin4, LOW);
    delay(delayTime1);

    digitalWrite(motorPin1, HIGH);
    digitalWrite(motorPin2, HIGH);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, LOW);
    delay(delayTime1);
  }
}

Muy agradecido

Editado por Moderador

Moderador:
Por favor, lee las Normas del foro y edita tu código/error usando etiquetas de código.
Ve a edición, luego selecciona todo el código que has publicado, lo cortas y click en (<CODE/>)




También edita el titulo y coloca algo que explique que necesitas o consultas pero nada de "Necesito ayuda...". El foro solo brinda ayuda y pide que los que consultas lo hagan respetando las pocas normas que tenemos.
Ahora es tu turno.

Veo que estás usando "Serial.print()"... debe agregar esto a "void setup()" para ver la salida de Serial.print()....

void setup() {
  Serial.begin(115200);
  .
  .
}

Y si los botones "izquierdo" y "derecho" están conectados de esta manera: ''' Pin de Arduino -- botón -- GND '''... Deberías configurar tus pulsadores así...

  pinMode(entrada, INPUT_PULLUP); // Pin del botón izquierdo
  pinMode(entrada1, INPUT_PULLUP); // Pin del botón derecho

El código funciona correctamente cuando se realizan las correcciones.

Hola @ricardoasd

Por si se te ha "colado", corrige el primer digitalWrite(motorPin1, LOW).
Si no, NO funcionara.
Un saludo !!! ... :cocktail:... :cocktail:

// Botón derecho - Gira hacia la derecha
pulsador1 = digitalRead(entrada1);
if (pulsador1 == LOW) {
// Mueve el motor hacia la derecha
Serial.println("Botón derecho presionado");
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime1);

Moderador
Editado para que el código se lea correctamente.