1. 安装Arduino IDE(版本建议1.8.5及以上,或2.3.8,均可兼容);
2. 打开IDE,选择“工具→开发板→Arduino Nano”;
3. 选择“工具→处理器→ATmega328P(Old Bootloader)”(若上传失败,可切换此选项);
4. 选择“工具→端口”,找到Arduino Nano对应的串口(可通过设备管理器查看)。
// MX1508 4轮小车自动程序
// 功能:前进4s → 顺时针转圈5s → 后退4s → 等待20s → 循环
#define INA1 2
#define INA2 3
#define INB1 4
#define INB2 5
#define SPEED 200 // 电机速度(0-255,越大越快,新手建议200)
void setup() {
Serial.begin(9600); // 初始化串口,用于查看状态
// 设置所有控制引脚为输出模式
pinMode(INA1, OUTPUT);
pinMode(INA2, OUTPUT);
pinMode(INB1, OUTPUT);
pinMode(INB2, OUTPUT);
Serial.println("智能小车启动成功!开始执行自动循环动作...");
}
// 小车前进(4个电机同时正转)
void forward() {
digitalWrite(INA1, HIGH);
digitalWrite(INA2, LOW);
digitalWrite(INB1, HIGH);
digitalWrite(INB2, LOW);
Serial.println("状态:前进");
}
// 小车后退(4个电机同时反转)
void back() {
digitalWrite(INA1, LOW);
digitalWrite(INA2, HIGH);
digitalWrite(INB1, LOW);
digitalWrite(INB2, HIGH);
Serial.println("状态:后退");
}
// 原地顺时针转圈(左轮前进,右轮后退)
void turnClockwise() {
digitalWrite(INA1, HIGH);
digitalWrite(INA2, LOW);
digitalWrite(INB1, LOW);
digitalWrite(INB2, HIGH);
Serial.println("状态:原地顺时针转圈");
}
// 停车(所有电机停止转动)
void stopCar() {
digitalWrite(INA1, LOW);
digitalWrite(INA2, LOW);
digitalWrite(INB1, LOW);
digitalWrite(INB2, LOW);
Serial.println("状态:停车,等待20秒后继续循环\n");
}
// 主循环(自动重复执行预设动作)
void loop() {
// 1. 前进4秒
forward();
delay(4000); // 延时4000毫秒(4秒)
// 2. 原地顺时针转圈5秒
turnClockwise();
delay(5000); // 延时5000毫秒(5秒)
// 3. 后退4秒
back();
delay(4000); // 延时4000毫秒(4秒)
// 4. 停车,等待20秒后重复循环
stopCar();
delay(20000); // 延时20000毫秒(20秒)
}