Motor Driver(L298N) CN: 두 판 사이의 차이
(새 문서: {{#seo:|title=ArduWiki:Arduino L298N 电机驱动模块指南|title_mode=append|keywords=Arduino, 信息科学, 创客学习, 项目式学习, L298N 电机驱动模块, Arduino作品, 毕业设计, Arduino示例代码|description=介绍如何使用Arduino控制L298N电机驱动模块(基础信息、电路图、示例代码),适用于信息与创客课程。}}center|class=coders100 该模块可以控制电机的速度与转动方向。 可同时控...) |
(차이 없음)
|
2025년 3월 27일 (목) 18:24 기준 최신판

该模块可以控制电机的速度与转动方向。
可同时控制两个直流电机或一个步进电机。
规格
- 输入电压:9V ~ 12V
- PWM 信号控制速度
- 数字信号控制方向
示例所用硬件
- Arduino board
- 杜邦线
- 电源(9 ~ 12V 电池或适配器)
- 直流电机
- L298N 电机驱动模块
连接方式
| Arduino UNO | L298N 电机驱动模块 | 直流电机 | 电源模块 |
| GND | GND | GND | |
| D9 | ENA | ||
| D8 | IN1 | ||
| D7 | IN2 | ||
| 9 ~ 12V | VCC | ||
| OUT1 | 连接 | ||
| OUT2 | 连接 |

示例代码
马达速度逐渐减慢直至停止,再反向旋转的示例。
const int IN1 = 8;
const int IN2 = 7;
const int ENA = 9;
void setup() {
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
delay(2000);
analogWrite(ENA, 170);
delay(2000);
analogWrite(ENA, 85);
delay(2000);
analogWrite(ENA, 0);
delay(2000);
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(ENA, 255);
delay(2000);
analogWrite(ENA, 170);
delay(2000);
analogWrite(ENA, 85);
delay(2000);
analogWrite(ENA, 0);
delay(2000);
}
void loop() {
delay(100);
}
执行结果