Problema con shield L293D

Tengo un problema, cuando conecte un motor a un shield de estos funcionaba bien, pero por alguna razon cuando cambie de codigo, el motor dejo de funcionar,
Ya volvi al codigo original y nada,el motor no vuelve a girar, sin embargo, un sensor ultrasonido que tambien estaba conectada si funciona bien, alguien sabe que pasa?
Por cierto estaba conectada a mi pc mientras giraba
Este es el codigo

#include <AFMotor.h> //libreria para controlador de motores
#define Pulsador 16 // Habilitar puerto 16 para modulo de arranque
#define Pulsador2 17 // Habilitar puerto 16 para sensor de arranque



long distancia; // variable sensor ultrasonico
long tiempo;    //variable sensor ultrasonico


int estadoAC = 0;


AF_DCMotor motor3(2);//habilitar salida motor 3 
AF_DCMotor motor4(4);//habilitar salida motor 4 


void setup()
{
  Serial.begin(9600);
  //configurar pines para sensor ultrasonico
   pinMode(10, OUTPUT); //poner pin 10 de arduino como salida
   pinMode(9, INPUT);   //poner pin 9 de arduino como entrada
  //configurar pines para sensores de linea
   pinMode( 14, INPUT); //poner pin A0 de arduino como entrada digital
   pinMode( 15, INPUT);//poner pin A1 de arduino como entrada digital
   pinMode(Pulsador, INPUT);
      pinMode(Pulsador2, OUTPUT);


   
}
     
void loop() {
     estadoAC = digitalRead (Pulsador);


    if (estadoAC == 1){      
     digitalWrite(Pulsador2,HIGH); 
     digitalWrite(10,LOW); // Por cuestión de estabilización del sensor
     delayMicroseconds(2);//esperar 5 microsegundos
     digitalWrite(10, HIGH); // envío del pulso para disparo del ultrasónico
     delayMicroseconds(4);//esperar 10 microsegundos
     tiempo=pulseIn(9, HIGH);//recibir el pulso del sensor y guardarlo en variable tiempo
     //distancia= int(0.017*tiempo);//convertir tiempo del pulso en distancia y convertirlo en cm
     distancia= int((tiempo/2)/29.154);
    
      
     
    if(distancia <= 14)//si el sensor ultrasonico detecta obstaculo de 15 cm o menos sigue hacia adelante 
  {       
       motor3.setSpeed(255); //motor 3 adelante
       motor3.run(FORWARD);  //motor 3 adelante
       motor4.setSpeed(255); //motor 4 adelanteo
       motor4.run(FORWARD);  //motor 4 adelante
     delay (100);//espera 3 segundos
        Serial.print(distancia);
        Serial.println("cm");
  }
       motor3.setSpeed(100); //motor 3 adelante
       motor3.run(FORWARD);  //motor 3 adelante
       motor4.setSpeed(100); //motor 3 adelante
       motor4.run(BACKWARD);  //motor 3 adelante
    // delay (3000);//espera 3 segundos
   
         Serial.print(distancia);
         Serial.println("cm");
   
    if((!digitalRead(14)))//si el sensor inferior derecha detecta 
  {
    //instrucciones para que avance para atras
       motor3.setSpeed(255); //motor 3 atras
       motor3.run(BACKWARD); //motor 3 atras
       motor4.setSpeed(255); //motor 4 atras
       motor4.run(BACKWARD); //motor 4 atras
     delay (400);//espera 1 segundo
      //instrucciones para que gire a la izquierda
      motor3.setSpeed(255); //motor 3 adelante
      motor3.run(FORWARD);  //motor 3 adelante
      motor4.setSpeed(255); //motor 4 atras
      motor4.run(BACKWARD); //motor 4 atras
     delay (600);//espera 1 segundo
          Serial.print(distancia);
             Serial.println("cm");
  }   
  
  if((!digitalRead(15)))//si el sensor inferior izquierda detecta
  {
     //instrucciones para que avance para atras
       motor3.setSpeed(255); //motor 3 atras
       motor3.run(BACKWARD); //motor 3 atras
       motor4.setSpeed(255); //motor 4 atras
       motor4.run(BACKWARD); //motor 4 atras
     delay (400);//espera 1 segundo
      //instrucciones para que gire a la derecha
      motor4.setSpeed(255); //motor 4 adelante
      motor4.run(FORWARD);  //motor 4 adelante
      motor3.setSpeed(123); //motor 3 atras
      motor3.run(BACKWARD); //motor 3 atras
    delay (600);//espera 1 segundo
          Serial.print(distancia);
             Serial.println("cm");
  }
    
  }else{
  if (estadoAC == 0){      
     digitalWrite(Pulsador2,LOW); 
      motor4.setSpeed(0); //STOP
      motor4.run(RELEASE); //STOP
      motor3.setSpeed(0); //STOP
      motor3.run(RELEASE); //STOP
     }
  } 
}

Sube un esquema de las conexiones de tus motores y alimentación.

¿Has probado los motores con el ejemplo MotorTest de la librería?

El código tiene salida por puerto Serie, visualizaste las respuestas en el monitor serie?
Supongo que si porque dices que el sensor ultrasónico si funciona.
Acá tienes un esquema similar al tuyo

Acá usan 9 y 10 para accionar los motores pero como dije es similar a tu 2 y 4.

Revisa que el resto este de acuerdo a las conexiones que se muestran alrededor del L293

también veo que tienes sensores en 14 y 15.
Agreguemos algo que diga que están funcionando y no solo que indiquen la distancia del sensor ultrasónico que se presta a confusión

#include <AFMotor.h>

/* =======================
   DEFINICIÓN DE PINES
   ======================= */
#define PIN_PULSADOR    16      // Arranque (A2)
#define PIN_TRIGGER        10      // Trigger HC-SR04
#define PIN_ECHO                9      // Echo HC-SR04
#define PIN_SENSOR_IZQ  14      // A0
#define PIN_SENSOR_DER 15      // A1

/* =======================
   OBJETOS MOTORES
   ======================= */
AF_DCMotor motorIzq(2);   // Motor izquierdo
AF_DCMotor motorDer(4);   // Motor derecho

/* =======================
   VARIABLES GLOBALES
   ======================= */
long distancia = 0;
int estadoAC = 0;

/* =======================
   FUNCIÓN SENSOR ULTRASONICO
   ======================= */
long leerDistancia() {

  long tiempo;

  digitalWrite(PIN_TRIGGER, LOW);
  delayMicroseconds(2);

  digitalWrite(PIN_TRIGGER, HIGH);
  delayMicroseconds(10);
  digitalWrite(PIN_TRIGGER, LOW);

  tiempo = pulseIn(PIN_ECHO, HIGH, 25000); // timeout ~4m
  if (tiempo == 0) return 999;  // sin eco

  return (tiempo / 2) / 29.154; // distancia en cm
}

/* =======================
   SETUP
   ======================= */
void setup() {

  Serial.begin(9600);

  pinMode(PIN_TRIGGER, OUTPUT);
  pinMode(PIN_ECHO, INPUT);

  pinMode(PIN_SENSOR_IZQ, INPUT);
  pinMode(PIN_SENSOR_DER, INPUT);

  pinMode(PIN_PULSADOR, INPUT);

  motorIzq.setSpeed(0);
  motorDer.setSpeed(0);
}

/* =======================
   LOOP PRINCIPAL
   ======================= */
void loop() {

  estadoAC = digitalRead(PIN_PULSADOR);

  if (estadoAC == HIGH) {

    distancia = leerDistancia();

    Serial.print("Distancia: ");
    Serial.print(distancia);
    Serial.println(" cm");

    /* =======================
       OBSTÁCULO FRONTAL
       ======================= */
    if (distancia <= 15) {
      // Avanza
      motorIzq.setSpeed(255);
      motorIzq.run(FORWARD);

      motorDer.setSpeed(255);
      motorDer.run(FORWARD);

      delay(100);
    }
    else {
      // Giro de búsqueda
      motorIzq.setSpeed(120);
      motorIzq.run(FORWARD);

      motorDer.setSpeed(120);
      motorDer.run(BACKWARD);
    }

    /* =======================
       SENSOR IZQUIERDO
       ======================= */
    if (digitalRead(PIN_SENSOR_IZQ) == LOW) {

      Serial.print("Sensor izq activo");
      // Retrocede
      motorIzq.setSpeed(255);
      motorIzq.run(BACKWARD);
      motorDer.setSpeed(255);
      motorDer.run(BACKWARD);
      delay(400);

      // Gira a la derecha
      motorIzq.setSpeed(255);
      motorIzq.run(FORWARD);
      motorDer.setSpeed(255);
      motorDer.run(BACKWARD);
      delay(600);
    }

    /* =======================
       SENSOR DERECHO
       ======================= */
    if (digitalRead(PIN_SENSOR_DER) == LOW) {
      Serial.print("Sensor der activo");
      // Retrocede
      motorIzq.setSpeed(255);
      motorIzq.run(BACKWARD);
      motorDer.setSpeed(255);
      motorDer.run(BACKWARD);
      delay(400);

      // Gira a la izquierda
      motorIzq.setSpeed(255);
      motorIzq.run(BACKWARD);
      motorDer.setSpeed(255);
      motorDer.run(FORWARD);
      delay(600);
    }

  } 
  else {
    // AUTO DETENIDO
    motorIzq.setSpeed(0);
    motorDer.setSpeed(0);

    motorIzq.run(RELEASE);
    motorDer.run(RELEASE);
  }
}