Módulo Driver L298N Puente H Dual 2 A – Controlador de Motores DC y Paso a Paso
El módulo driver L298N –conocido como dual H-bridge motor driver L298, l298 motor driver module o simplemente h bridge L298N– permite controlar dos motores DC independientes o un motor paso a paso bipolar de hasta 2 A por canal. Funciona sin problemas con Arduino Uno, Nano, Arduino Mega, ESP32, Raspberry Pi y STM32, lo que lo hace ideal para robótica educativa, impresoras 3D, proyectos CNC y domótica DIY.
Ventajas clave
-
- Amplio rango de voltaje (5 V – 35 V) → perfecto para robots con baterías Li-ion 7,4 V o packs 12 V.
- Regulador LM7805 integrado: entrega 5 V / 500 mA para sensores o la placa de control.
- Doble puente H con jumpers
ENA/ENBy pinesIN1…IN4listos para PWM. - Protección térmica + diodos de rueda libre ya montados.
Especificaciones (l298n datasheet resumido)
| Parámetro | Valor |
|---|---|
| Voltaje motor | 5 V – 35 V DC |
| Voltaje lógica | 5 V |
| Corriente continua | 2 A por canal (3 A pico c/disipador) |
| Tipo señal | PWM + dirección (TTL 3,3 V / 5 V) |
| Temperatura | -20 °C → 85 °C |
| Dimensiones | 43 × 43 × 27 mm |
L298N pinout y conexiones
Diagrama de conexión típico con robot 4 ruedas
Formas de alimentación
- 6 – 12 V → Jumper 5 V activo. El pin
+5Ventrega 5 V para tu Arduino (≤ 500 mA). - 12 – 35 V → Jumper 5 V quitado. Debes inyectar 5 V externos al pin
+5V.
+5V si el jumper está puesto: dañarás el regulador.Preguntas frecuentes
¿Cómo conectar el L298N a un Arduino UNO?
Une IN1-IN4 con los pines digitales 8-11, deja los jumpers ENA/ENB en 5 V para velocidad máxima, comparte GND y alimenta el módulo con 6-12 V.
¿Funciona con Raspberry Pi o ESP32?
Sí. El driver l298n acepta señales de 3,3 V. Usa las GPIO 17-27 para IN1-IN4 y genera PWM con pigpio.
L298N vs L293D: ¿cuál elegir?
El l298 stepper motor driver soporta 2 A, mientras que el L293D solo 600 mA. Para motores de mayor corriente, el L298N es la opción segura.
¿Puedo mover un paso a paso NEMA 17?
Sí, siempre que la corriente por fase no exceda 2 A. Para micro-paso usa mejor un DRV8825.
// Control de 2 motores DC con L298N
// Pines de control
const int IN1 = 8;
const int IN2 = 9;
const int IN3 = 10;
const int IN4 = 11;
void setup() {
// Configura los pines como salidas
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}
void loop() {
avanzar(2000); // Avanza durante 2 segundos
retroceder(2000); // Retrocede durante 2 segundos
parar(1000); // Se detiene durante 1 segundo
}
// Función para avanzar ambos motores
void avanzar(unsigned long duracion) {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
delay(duracion);
}
// Función para retroceder ambos motores
void retroceder(unsigned long duracion) {
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
delay(duracion);
}
// Función para detener ambos motores
void parar(unsigned long duracion) {
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
delay(duracion);
}





