L298N 是一种常见的双 H 桥直流电机驱动芯片,广泛用于控制直流电机和步进电机。它能够实现对电机的正反转控制以及调速功能。下面,我们将介绍如何使用 L298N 驱动直流电机。
+12V
接口连接到适合电机的电源正极,GND
接口连接到电源的负极。L298N 模块的 5V
输出端可以连接到 Arduino 的 5V
引脚,但通常建议将 5V 引脚与外部电源供电,这样可以避免电流过大导致 Arduino 板损坏。
电机连接
将直流电机的两个端口分别连接到 L298N 模块的 OUT1
和 OUT2
。
控制引脚连接
将 L298N 模块的 IN1
、IN2
、IN3
、IN4
引脚分别连接到 Arduino 的数字引脚(例如 D2
, D3
, D4
, D5
)。这些引脚用于控制电机的旋转方向和启停。
使能引脚
ENA
和 ENB
引脚控制电机的启停。通常,ENA
引脚连接到 5V
,启用电机 1;ENB
引脚同样连接到 5V
,启用电机 2。如果只控制一个电机,可以不接 ENB 引脚。+-------------------+
| L298N模块 |
| |
| +12V --- 电源 + |
| GND --- 电源 - |
| |
| IN1 --- D2 |
| IN2 --- D3 |
| IN3 --- D4 |
| IN4 --- D5 |
| |
| OUT1 --- 电机1+ |
| OUT2 --- 电机1- |
| ENA --- 5V |
| |
+-------------------+
通过控制 IN1
和 IN2
引脚的高低电平,您可以控制电机的旋转方向:
IN1
为 HIGH,IN2
为 LOW,电机顺时针旋转。IN1
为 LOW,IN2
为 HIGH,电机逆时针旋转。要启动电机,只需将控制引脚设置为合适的电平。当所有控制引脚的电平设置正确时,电机将开始转动。
要停止电机,只需将 IN1
和 IN2
都设为 LOW,电机将停止转动。
L298N 通过 PWM(脉宽调制)信号调节电机速度。您可以使用 Arduino 的 analogWrite()
函数向 ENA
或 ENB
引脚发送 PWM 信号,以控制电机的速度。例如:
cpp
analogWrite(ENA, 128); // 设置电机1的速度(范围:0-255)
```cpp
void setup() { // 设置引脚为输出 pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); pinMode(ENA, OUTPUT); pinMode(ENB, OUTPUT);
// 设置电机速度 analogWrite(ENA, 128); // 50% 速度 analogWrite(ENB, 128); // 50% 速度 }
void loop() { // 电机正转 digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
delay(2000); // 正转2秒
// 电机反转 digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
delay(2000); // 反转2秒 } ```
L298N 模块是驱动直流电机的有效工具,通过简单的控制引脚,您可以轻松实现电机的正反转、启停和调速。结合 Arduino 或其他微控制器,L298N 为项目提供了灵活的电机控制方案。