以下是 L298N 电机驱动模块 的详细使用指南(中文版),涵盖接线、配置、代码示例及注意事项:
一、模块基础
功能:驱动直流电机(最多2个)或1个步进电机,支持正反转和PWM调速。
关键参数:
驱动电压:5V~35V(推荐7V~12V)
单通道最大电流:2A(峰值3A)
逻辑电压:5V(可为单片机供电)
二、接线说明
1. 电源部分
| 接口 | 接线目标 |
|---|---|
| 12V输入 | 外部电源正极(7~12V锂电池/适配器) |
| GND | 外部电源负极 & 单片机GND(必须共地) |
| 5V输出 | 单片机VCC(如需模块给单片机供电) |
2. 电机输出
| 接口 | 功能 |
|---|---|
| OUT1 & OUT2 | 电机1的正负极 |
| OUT3 & OUT4 | 电机2的正负极 |
3. 控制信号
| 引脚 | 功能 | 接单片机 |
|---|---|---|
| ENA | 电机1使能(PWM调速) | PWM引脚(如D9) |
| IN1 & IN2 | 电机1方向控制 | 数字IO(如D2, D3) |
| ENB | 电机2使能(PWM调速) | PWM引脚(如D10) |
| IN3 & IN4 | 电机2方向控制 | 数字IO(如D4, D5) |
? 注意:若不需要调速,将 ENA/ENB 用跳线帽接 5V(使能常开)。
三、电机控制逻辑
方向控制(以电机1为例)
| IN1 | IN2 | 电机状态 |
|---|---|---|
| 高 | 低 | 正转 |
| 低 | 高 | 反转 |
| 高 | 高 | 刹车停止 |
| 低 | 低 | 惯性停止 |
调速控制向 ENA/ENB 输入 PWM信号(0~255)调节速度(值越大越快)。
四、示例代码(Arduino)
// 定义控制引脚const int ENA = 9; // 电机1使能(PWM)const int IN1 = 2; // 电机1方向1const int IN2 = 3; // 电机1方向2void 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, HIGH);analogWrite(ENA, 128); // 50%速度delay(2000);// 刹车停止digitalWrite(IN1, HIGH);digitalWrite(IN2, HIGH);delay(1000);}
五、常见问题解决
电机抖动不转:检查 ENA/ENB 是否使能(接5V或PWM信号);确认电源功率足够(建议10W以上)。
模块发烫:超过负载(单电机电流>2A)→ 加散热片或换更大驱动;电机堵转 → 避免强制卡死电机。
干扰单片机复位:单独供电时,确保 单片机GND 与模块 GND 相连;在控制线上并联 104电容 滤波。
六、进阶技巧
驱动步进电机
使用 IN1~IN4 控制两相四线步进电机(需编写时序脉冲)。
并联输出将 ENA 和 ENB 短接,OUT1 & OUT3、OUT2 & OUT4 并联,驱动大电流单电机。
外接二极管续流大功率电机在 OUT1~OUT4 反向并联二极管(1N5819),保护模块。
重要提醒:? 切勿让驱动电压(12V)与逻辑电压(5V)短路!
⚠️ 接线完毕再上电,避免模块损坏!
210