#include <IRremote.h>
#include <Stepper.h>
const int stepsPerRevolution = 200;
int Receiver = 2;
IRrecv irrecv(Receiver);
decode_results results;
Stepper stepper(stepsPerRevolution, 8, 9, 10, 11);
int previous = 0;
int stepperSteps =0;
void setup() {
stepper.setSpeed(200);
irrecv.enableIRIn();
}
void loop(){
if (irrecv.decode()) {
switch (irrecv.decodedIRData.command) {
case 2:
stepperSteps += 1;
if (stepperSteps > stepsPerRevolution) {
stepperSteps = stepsPerRevolution;
}
break;
case 152:
stepperSteps -= 1;
if (stepperSteps < 0) {
stepperSteps = 0;
}
break;
}
irrecv.resume();
stepper.step(stepperSteps - previous);
previous = stepperSteps;
}
}