#include <IRremote.h>
#define A 8
#define B 9
#define C 10
#define D 11
#define ir 12
void setup(){
Serial.begin(9600);
IrReceiver.begin(ir);
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
}
void loop(){
if (IrReceiver.decode()) {
IrReceiver.resume();
int val = IrReceiver.decodedIRData.command;
Serial.println(val);
if (val == 144) {
Serial.println("FORWARD STEPS");
for (int i = 0; i < 75; i++) {
F1();
F2();
F3();
F4();
}
}
else if (val == 224) {
Serial.println("BACKWARD STEPS");
for (int i = 0; i < 75; i++) {
F4();
F3();
F2();
F1();
}
}
}
}
void F1() {
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
delay(3);
}
void F2() {
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
delay(3);
}
void F3() {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
delay(3);
}
void F4() {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
delay(3);
}