#include "IRremote.h"
// Motor pinleri
int ena = 3;
int enb = 6;
int in1 = 2;
int in2 = 4;
int in3 = 5;
int in4 = 7;
// IR sensör pini
int sensor = A5;
// Buton kodları
String buton_yukari = "E718FF00";
String buton_asagi = "AD52FF00";
String buton_sol = "F708FF00";
String buton_sag = "A55AFF00";
String buton_ok = "E31CFF00";
String kod, sonkod;
void setup() {
Serial.begin(9600);
IrReceiver.begin(sensor, 0);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
pinMode(ena, OUTPUT);
pinMode(enb, OUTPUT);
}
void ileri() {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite(ena, 255);
analogWrite(enb, 255);
}
void geri() {
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
analogWrite(ena, 255);
analogWrite(enb, 255);
}
void sag() {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite(ena, 172);
analogWrite(enb, 244);
delay(50);
}
void sol() {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite(ena, 244);
analogWrite(enb, 172);
delay(50);
}
void dur() {
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
analogWrite(ena, LOW);
analogWrite(enb, LOW);
}
void loop() {
if (IrReceiver.decode()) {
kod = String(IrReceiver.decodedIRData.decodedRawData, HEX);
if (kod != "0") {
sonkod = kod;
} else {
kod = sonkod;
}
kod.toUpperCase();
Serial.print("Okunan Kod: ");
Serial.println(kod);
if(kod == buton_yukari){ ileri(); }
else if(kod == buton_asagi){ geri(); }
else if(kod == buton_sag){ sag(); }
else if(kod == buton_sol){ sol(); }
else if(kod == buton_ok){ dur(); }
else { dur(); }
IrReceiver.resume();
}
}