#include #define RELAY1 7 #define RELAY2 5 int RECV_PIN = 12; IRrecv irrecv(RECV_PIN); decode_results results; void setup(){ // Initialize the Arduino data pins for OUTPUT analogReference(DEFAULT); pinMode(RECV_PIN, INPUT); pinMode(RELAY1, OUTPUT); pinMode(RELAY2, OUTPUT); irrecv.enableIRIn(); // Start the receiver Serial.begin(9600); } void loop() { int i=0; if (irrecv.decode(&results)) { translateIR(); irrecv.resume(); // Receive the next value } } void translateIR() // takes action based on IR code received describing Car MP3 IR codes { switch(results.value){ case 0xFFA25D: Serial.println(" CH- "); break; case 0xFF629D: Serial.println(" CH "); break; case 0xFFE21D: Serial.println(" CH+ "); break; case 0xFF22DD: Serial.println(" PREV "); break; case 0xFF02FD: Serial.println(" NEXT "); break; case 0xFFC23D: Serial.println(" PLAY/PAUSE "); digitalWrite(RELAY1,HIGH); break; case 0xFFE01F: Serial.println(" VOL- "); break; case 0xFFA857: Serial.println(" VOL+ "); break; case 0xFF906F: Serial.println(" EQ "); break; case 0xFF6897: Serial.println(" OFF "); digitalWrite(RELAY1,LOW); break; case 0xFF9867: Serial.println(" 100+ "); break; case 0xFFB04F: Serial.println(" 200+ "); break; case 0xFF30CF: Serial.println(" RED "); digitalWrite(12, HIGH); break; case 0xFF18E7: Serial.println(" BLUE "); digitalWrite(11, HIGH); break; case 0xFF7A85: Serial.println(" 3 "); digitalWrite(RELAY2,HIGH); break; case 0xFF10EF: Serial.println(" 4 "); digitalWrite(RELAY2,LOW); break; case 0xFF38C7: Serial.println(" 5 "); break; case 0xFF5AA5: Serial.println(" 6 "); break; case 0xFF42BD: Serial.println(" 7 "); break; case 0xFF4AB5: Serial.println(" 8 "); break; case 0xFF52AD: Serial.println(" 9 "); break; default: Serial.print(" unknown button "); Serial.println(results.value, HEX); } delay(500); }