#include<Servo.h> //定义五中运动状态 #define STOP 0 #define FORWARD 1 #define BACKWARD 2 #define TURNLEFT 3 #define TURNRIGHT 4 //定义需要用到的引脚 int leftMotor1 = 4; int leftMotor2 = 5; int rightMotor1 = 6; int rightMotor2 = 7;
voidsetup(){ // put your setup code here, to run once: //设置控制电机的引脚为输出状态 pinMode(leftMotor1, OUTPUT); pinMode(leftMotor2, OUTPUT); pinMode(rightMotor1, OUTPUT); pinMode(rightMotor2, OUTPUT); }
voidloop(){ // put your main code here, to run repeatedly: int cmd; for(cmd=0;cmd<5;cmd++)//依次执行向前、向后、向左、想有、停止四个运动状态 { motorRun(cmd); delay(2000);//每个命令执行2s } } //运动控制函数 voidmotorRun(int cmd) { switch(cmd){ case FORWARD: digitalWrite(leftMotor1, LOW); digitalWrite(leftMotor2, HIGH); digitalWrite(rightMotor1, LOW); digitalWrite(rightMotor2, HIGH); break; case BACKWARD: digitalWrite(leftMotor1, HIGH); digitalWrite(leftMotor2, LOW); digitalWrite(rightMotor1, HIGH); digitalWrite(rightMotor2, LOW); break; case TURNLEFT: digitalWrite(leftMotor1, HIGH); digitalWrite(leftMotor2, LOW); digitalWrite(rightMotor1, LOW); digitalWrite(rightMotor2, HIGH); break; case TURNRIGHT: digitalWrite(leftMotor1, LOW); digitalWrite(leftMotor2, HIGH); digitalWrite(rightMotor1, HIGH); digitalWrite(rightMotor2, LOW); break; default: digitalWrite(leftMotor1, LOW); digitalWrite(leftMotor2, LOW); digitalWrite(rightMotor1, LOW); digitalWrite(rightMotor2, LOW); } }