Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: Lilnija_29012017 NucleoF042K6_IRReceiver
Diff: examples/IRrecvDumpV2/IRrecvDumpV2.ino
- Revision:
- 2:6bbd1e911324
- Parent:
- 1:370967a90abb
- Child:
- 3:17440cf7ab90
--- a/examples/IRrecvDumpV2/IRrecvDumpV2.ino Sat Jan 23 15:25:05 2016 +0900
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,177 +0,0 @@
-//------------------------------------------------------------------------------
-// Include the IRremote library header
-//
-#include <IRremote.h>
-
-//------------------------------------------------------------------------------
-// Tell IRremote which Arduino pin is connected to the IR Receiver (TSOP4838)
-//
-int recvPin = 11;
-IRrecv irrecv(recvPin);
-
-//+=============================================================================
-// Configure the Arduino
-//
-void setup ( )
-{
- Serial.begin(9600); // Status message will be sent to PC at 9600 baud
- irrecv.enableIRIn(); // Start the receiver
-}
-
-//+=============================================================================
-// Display IR code
-//
-void ircode (decode_results *results)
-{
- // Panasonic has an Address
- if (results->decode_type == PANASONIC) {
- Serial.print(results->address, HEX);
- Serial.print(":");
- }
-
- // Print Code
- Serial.print(results->value, HEX);
-}
-
-//+=============================================================================
-// Display encoding type
-//
-void encoding (decode_results *results)
-{
- switch (results->decode_type) {
- default:
- case UNKNOWN: Serial.print("UNKNOWN"); break ;
- case NEC: Serial.print("NEC"); break ;
- case SONY: Serial.print("SONY"); break ;
- case RC5: Serial.print("RC5"); break ;
- case RC6: Serial.print("RC6"); break ;
- case DISH: Serial.print("DISH"); break ;
- case SHARP: Serial.print("SHARP"); break ;
- case JVC: Serial.print("JVC"); break ;
- case SANYO: Serial.print("SANYO"); break ;
- case MITSUBISHI: Serial.print("MITSUBISHI"); break ;
- case SAMSUNG: Serial.print("SAMSUNG"); break ;
- case LG: Serial.print("LG"); break ;
- case WHYNTER: Serial.print("WHYNTER"); break ;
- case AIWA_RC_T501: Serial.print("AIWA_RC_T501"); break ;
- case PANASONIC: Serial.print("PANASONIC"); break ;
- case DENON: Serial.print("Denon"); break ;
- }
-}
-
-//+=============================================================================
-// Dump out the decode_results structure.
-//
-void dumpInfo (decode_results *results)
-{
- // Check if the buffer overflowed
- if (results->overflow) {
- Serial.println("IR code too long. Edit IRremoteInt.h and increase RAWLEN");
- return;
- }
-
- // Show Encoding standard
- Serial.print("Encoding : ");
- encoding(results);
- Serial.println("");
-
- // Show Code & length
- Serial.print("Code : ");
- ircode(results);
- Serial.print(" (");
- Serial.print(results->bits, DEC);
- Serial.println(" bits)");
-}
-
-//+=============================================================================
-// Dump out the decode_results structure.
-//
-void dumpRaw (decode_results *results)
-{
- // Print Raw data
- Serial.print("Timing[");
- Serial.print(results->rawlen-1, DEC);
- Serial.println("]: ");
-
- for (int i = 1; i < results->rawlen; i++) {
- unsigned long x = results->rawbuf[i] * USECPERTICK;
- if (!(i & 1)) { // even
- Serial.print("-");
- if (x < 1000) Serial.print(" ") ;
- if (x < 100) Serial.print(" ") ;
- Serial.print(x, DEC);
- } else { // odd
- Serial.print(" ");
- Serial.print("+");
- if (x < 1000) Serial.print(" ") ;
- if (x < 100) Serial.print(" ") ;
- Serial.print(x, DEC);
- if (i < results->rawlen-1) Serial.print(", "); //',' not needed for last one
- }
- if (!(i % 8)) Serial.println("");
- }
- Serial.println(""); // Newline
-}
-
-//+=============================================================================
-// Dump out the decode_results structure.
-//
-void dumpCode (decode_results *results)
-{
- // Start declaration
- Serial.print("unsigned int "); // variable type
- Serial.print("rawData["); // array name
- Serial.print(results->rawlen - 1, DEC); // array size
- Serial.print("] = {"); // Start declaration
-
- // Dump data
- for (int i = 1; i < results->rawlen; i++) {
- Serial.print(results->rawbuf[i] * USECPERTICK, DEC);
- if ( i < results->rawlen-1 ) Serial.print(","); // ',' not needed on last one
- if (!(i & 1)) Serial.print(" ");
- }
-
- // End declaration
- Serial.print("};"); //
-
- // Comment
- Serial.print(" // ");
- encoding(results);
- Serial.print(" ");
- ircode(results);
-
- // Newline
- Serial.println("");
-
- // Now dump "known" codes
- if (results->decode_type != UNKNOWN) {
-
- // Some protocols have an address
- if (results->decode_type == PANASONIC) {
- Serial.print("unsigned int addr = 0x");
- Serial.print(results->address, HEX);
- Serial.println(";");
- }
-
- // All protocols have data
- Serial.print("unsigned int data = 0x");
- Serial.print(results->value, HEX);
- Serial.println(";");
- }
-}
-
-//+=============================================================================
-// The repeating section of the code
-//
-void loop ( )
-{
- decode_results results; // Somewhere to store the results
-
- if (irrecv.decode(&results)) { // Grab an IR code
- dumpInfo(&results); // Output the results
- dumpRaw(&results); // Output the results in RAW format
- dumpCode(&results); // Output the results as source code
- Serial.println(""); // Blank line between entries
- irrecv.resume(); // Prepare for the next value
- }
-}