#include <IRremote.h>
#include <Stepper.h>
#define PIN_RECEIVER 13
IRrecv receiver(PIN_RECEIVER);
decode_results results;
const int stepsPerRevolution = 200;
int rotate = -2, last;
Stepper myStepper(stepsPerRevolution, 14, 27, 26, 25);
void translateIR()
{
// Takes command based on IR code received
switch (results.value) {
case 475029760:
rotate += 10;
break;
case 304127099:
rotate -= 10;
break;
}
myStepper.step(rotate - last);
last = rotate;
}
void setup() {
Serial.begin(115200);
myStepper.setSpeed(60);
receiver.enableIRIn(); // Start the receiver
}
void loop() {
if (receiver.decode( & results)) {
translateIR();
receiver.resume(); // Receive the next value
}
delay(10);
}