L298N: Классический драйвер
L298N: Классический драйвер
L298N — это мощный, но устаревший драйвер двойного H-моста. Он огромен, имеет большой радиатор и кучу клемм.
![]()
1. Подключение
Модуль имеет 3 клеммника и ряд пинов.
Питание (Клеммник из 3-х винтов)
- 12V: Вход силового питания (от 7V до 35V). Сюда подключаем Плюс аккумулятора.
- GND: Общая земля. Сюда подключаем Минус аккумулятора И GND Arduino.
- 5V: Выход 5V (если стоит перемычка). Можно питать Arduino отсюда!
Важно: Если питание моторов > 12V, снимите перемычку “5V Enable” и подайте внешние 5V на клемму 5V для питания логики чипа. Иначе сгорит стабилизатор.
Выходы на моторы
- OUT1 / OUT2: Мотор А.
- OUT3 / OUT4: Мотор B.
Управление (Пины)
- ENA: Скорость мотора А (PWM). Если стоит перемычка — всегда макс. скорость.
- IN1 / IN2: Направление мотора А.
- IN3 / IN4: Направление мотора B.
- ENB: Скорость мотора B (PWM).
2. Программная реализация
// Пины для Мотора А
#define ENA 9 // PWM (обязательно пин с тильдой ~)
#define IN1 8
#define IN2 7
void setup() {
pinMode(ENA, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
}
void loop() {
// Вперед на полной скорости
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
delay(2000);
// Стоп
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
delay(1000);
// Назад на половинной скорости
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(ENA, 128); // 0-255
delay(2000);
}
Таблица истинности (для одного канала)
| IN1 | IN2 | ENA (PWM) | Результат |
|---|---|---|---|
| HIGH | LOW | 255 | Вперед (Быстро) |
| HIGH | LOW | 100 | Вперед (Медленно) |
| LOW | HIGH | 255 | Назад |
| LOW | LOW | X | Стоп (Свободный выбег) |
| HIGH | HIGH | X | Стоп (Торможение) |
3. Недостатки
- Падение напряжения: На драйвере теряется около 2V. Если у вас 4 батарейки AA (6V), мотор получит только 4V.
- Нагрев: Радиатор нужен не для красоты.
