#include<SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); //HC-12 tx pin, rx pin
int in1=4, in2=5, in3=6, in4=7; //Motor driver pins
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
}
void moveForward(){
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}
void moveBackward(){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}
void moveLeft(){
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}
void moveRight(){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
}
void clockwise(){
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}
void anticlockwise(){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}
void loop() {
if(mySerial.available()>0){
int input = mySerial.read();
if(input=='1'){
Serial.println("FORWARD");
moveForward();
}
if(input=='2'){
Serial.println("BACKWARD");
moveBackward();
}
if(input=='3'){
Serial.println("RIGHT");
moveRight();
}
if(input=='4'){
Serial.println("LEFT");
moveLeft();
}
if(input=='5'){
Serial.println("CLOCKWISE");
clockwise();
}
if(input=='6'){
Serial.println("ANTICLOCKWISE");
anticlockwise();
}
delay(190);
}
else{
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
}
}