IRProtocolDetector.ino 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #include <IRremote.h>
  2. const int RECV_PIN = 7;
  3. IRrecv irrecv(RECV_PIN);
  4. decode_results results;
  5. void setup()
  6. {
  7. Serial.begin(9600);
  8. irrecv.enableIRIn(); // Start the receiver
  9. irrecv.blink13(true); // Blink when IR signal received?
  10. while(!Serial) {;} // Wait for Serial Connection...
  11. Serial.println("Connected!");
  12. }
  13. void loop() {
  14. if (irrecv.decode(&results)) {
  15. switch (results.decode_type){
  16. case NEC: Serial.print("NEC: "); break ;
  17. case SONY: Serial.print("SONY: "); break ;
  18. case RC5: Serial.print("RC5: "); break ;
  19. case RC6: Serial.print("RC6: "); break ;
  20. case DISH: Serial.print("DISH: "); break ;
  21. case SHARP: Serial.print("SHARP: "); break ;
  22. case JVC: Serial.print("JVC: "); break ;
  23. case SANYO: Serial.print("SANYO: "); break ;
  24. case MITSUBISHI: Serial.print("MITSUBISHI: "); break ;
  25. case SAMSUNG: Serial.print("SAMSUNG: "); break ;
  26. case LG: Serial.print("LG: "); break ;
  27. case WHYNTER: Serial.print("WHYNTER: "); break ;
  28. case AIWA_RC_T501: Serial.print("AIWA_RC_T501: "); break ;
  29. case PANASONIC: Serial.print("PANASONIC: "); break ;
  30. case DENON: Serial.print("DENON: "); break ;
  31. default:
  32. case UNKNOWN: Serial.print("UNKNOWN: "); break ;
  33. }
  34. Serial.print(results.value, HEX);
  35. // Added # of bits in decode type
  36. Serial.print(" ");
  37. Serial.println(results.bits);
  38. irrecv.resume(); // Receive the next value
  39. }
  40. }