Created
July 4, 2020 16:20
-
-
Save tomash/9fec25d3be57ab1468ac7823dafd9a83 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* IRremoteESP8266: IRrecvDump - dump details of IR codes with IRrecv | |
* An IR detector/demodulator must be connected to the input RECV_PIN. | |
* Version 0.1 Sept, 2015 | |
* Based on Ken Shirriff's IrsendDemo Version 0.1 July, 2009, Copyright 2009 Ken Shirriff, http://arcfn.com | |
* JVC and Panasonic protocol added by Kristian Lauszus (Thanks to zenwheel and other people at the original blog post) | |
* LG added by Darryl Smith (based on the JVC protocol) | |
*/ | |
#include <IRremoteESP8266.h> | |
int RECV_PIN = D7; //an IR detector/demodulator is connected to GPIO pin 2 | |
IRrecv irrecv(RECV_PIN); | |
decode_results results; | |
void setup() | |
{ | |
Serial.begin(9600); | |
irrecv.enableIRIn(); // Start the receiver | |
} | |
void dump(decode_results *results) { | |
// Dumps out the decode_results structure. | |
// Call this after IRrecv::decode() | |
int count = results->rawlen; | |
if (results->decode_type == UNKNOWN) { | |
Serial.print("Unknown encoding: "); | |
} | |
else if (results->decode_type == NEC) { | |
Serial.print("Decoded NEC: "); | |
} | |
else if (results->decode_type == SONY) { | |
Serial.print("Decoded SONY: "); | |
} | |
else if (results->decode_type == RC5) { | |
Serial.print("Decoded RC5: "); | |
} | |
else if (results->decode_type == RC6) { | |
Serial.print("Decoded RC6: "); | |
} | |
else if (results->decode_type == PANASONIC) { | |
Serial.print("Decoded PANASONIC - Address: "); | |
Serial.print(results->panasonicAddress, HEX); | |
Serial.print(" Value: "); | |
} | |
else if (results->decode_type == LG) { | |
Serial.print("Decoded LG: "); | |
} | |
else if (results->decode_type == JVC) { | |
Serial.print("Decoded JVC: "); | |
} | |
else if (results->decode_type == AIWA_RC_T501) { | |
Serial.print("Decoded AIWA RC T501: "); | |
} | |
else if (results->decode_type == WHYNTER) { | |
Serial.print("Decoded Whynter: "); | |
} | |
Serial.print(results->value, HEX); | |
Serial.print(" ("); | |
Serial.print(results->bits, DEC); | |
Serial.println(" bits)"); | |
Serial.print("Raw ("); | |
Serial.print(count, DEC); | |
Serial.print("): "); | |
for (int i = 1; i < count; i++) { | |
if (i & 1) { | |
Serial.print(results->rawbuf[i]*USECPERTICK, DEC); | |
} | |
else { | |
Serial.write('-'); | |
Serial.print((unsigned long) results->rawbuf[i]*USECPERTICK, DEC); | |
} | |
Serial.print(" "); | |
} | |
Serial.println(); | |
} | |
void loop() { | |
if (irrecv.decode(&results)) { | |
Serial.println(results.value, HEX); | |
dump(&results); | |
irrecv.resume(); // Receive the next value | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment