//This code is made by : Goran Spasik, Darko Tosev ,Duko Serafimovski and Sasha Spasik #include //pin 11 from arduinoto to pin 7 from l293d //pin 10 from arduino to pin 2 from l293d //pin 9 from arduino to pin 10 from l293d //pin 8 from arduino to pin 15 from l293d int toward = 1, backward = 1, left = 1, right = 1; int RECV_PIN = 12;// pin 12 of arduino to data pin of ir receiver IRrecv irrecv(RECV_PIN); decode_results results; void setup(){ pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); pinMode(11,OUTPUT); Serial.begin(9600); irrecv.enableIRIn(); // Start the receiver } void loop(){ if(irrecv.decode(&results)){ irrecv.resume(); Serial.println(results.value, DEC); switch(results.value){ case 1634783279: Serial.println("toward"); backward=1; if(toward == 1){ digitalWrite(8,LOW); digitalWrite(9,HIGH); digitalWrite(10,LOW); digitalWrite(11,LOW); toward = 0; } else{ delay(5000); digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(11,LOW); toward = 1; } break; case 1634742479: Serial.println("backward"); toward=1; if(backward == 1){ digitalWrite(8,HIGH); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(11,LOW); backward = 0; } else { delay(5000); digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(11,LOW); backward = 1; } break; case 1634785319: Serial.println("right"); if(right == 1&& toward==0){ digitalWrite(8,LOW); digitalWrite(9,HIGH); digitalWrite(10,LOW); digitalWrite(11,HIGH); } else if(right == 1&& backward==0) { digitalWrite(8,HIGH); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(11,HIGH); } else if(right==1&&toward==1||backward==1) { digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(11,HIGH); } break; case 1634744519: Serial.println("left"); if(left == 1&&toward==0){ digitalWrite(8,LOW); digitalWrite(9,HIGH); digitalWrite(10,HIGH); digitalWrite(11,LOW); } else if (left==1 &&backward==0) { digitalWrite(8,HIGH); digitalWrite(9,LOW); digitalWrite(10,HIGH); digitalWrite(11,LOW); } else if(left==1 && backward==1||toward==1) { digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(10,HIGH); digitalWrite(11,LOW); } break; case 1634773079: Serial.println("stop"); toward = 1; backward = 1; left = 1; right = 1; digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(11,LOW); break; } delay(300); } }