#include <IRremote.h>
#include <Stepper.h>
#define PIN_RECEIVER 3 // Signal Pin of IR receiver
IRrecv receiver(PIN_RECEIVER);
const int stepsPerRevolution = 200; //0 to 200 , 50 magnatic Rotor
// FULL STEP , 1.8 , 200 STEPS
// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);//البنات المتصلة مع ال موتور الخطوة
//B- A- B+ A+
void setup() {
// set the speed at 60 rpm: 60 steps in 1 min?
myStepper.setSpeed(60); //سرعة الموتور حطها قد ما بدك او حسب كبر الماتور حجمه ونوعه
// initialize the serial port:
Serial.begin(9600); // الشاشة
receiver.enableIRIn();//بدء تشغيل المستقبل لاستقبال الاشارة من الريموت
}
void loop() {
if (receiver.decode())
tranIR();//استدعاء لل فنكشن المتحكم في الريموت الاشعة الحمراء
receiver.resume();//اي كمل للحالة الي بعدها
}
void tranIR()
{
switch (receiver.decodedIRData.command){
case 2:
Serial.println("clockwise");
myStepper.step(stepsPerRevolution);//مع عقارب الساعة(+)
delay(500);
break;
case 152:
Serial.println("counterclockwise");//عكس(-)
myStepper.step(-stepsPerRevolution);
delay(500);
break;
}
}