Infrared remote library for Arduino: send and receive infrared signals with multiple protocols Port from Arduino-IRremote https://github.com/z3t0/Arduino-IRremote
Diff: IRremote.h
- Revision:
- 3:17440cf7ab90
- Parent:
- 0:70c8e56bac45
diff -r 6bbd1e911324 -r 17440cf7ab90 IRremote.h --- a/IRremote.h Sat Jan 23 15:36:14 2016 +0900 +++ b/IRremote.h Sat Jan 23 15:09:34 2016 +0000 @@ -151,7 +151,7 @@ unsigned int address; // Used by Panasonic & Sharp [16-bits] unsigned long value; // Decoded value [max 32-bits] int bits; // Number of bits in decoded value - volatile unsigned int *rawbuf; // Raw intervals in 50uS ticks + unsigned int *rawbuf; // Raw intervals in 50uS ticks int rawlen; // Number of records in rawbuf int overflow; // true iff IR raw code too long }; @@ -167,16 +167,15 @@ class IRrecv { public: - IRrecv (int recvpin) ; - IRrecv (int recvpin, int blinkpin); - - void blink13 (int blinkflag) ; + IRrecv (PinName recvpin) ; int decode (decode_results *results) ; void enableIRIn ( ) ; + void disableIRIn ( ) ; bool isIdle ( ) ; void resume ( ) ; private: + void timer_isr (); long decodeHash (decode_results *results) ; int compare (unsigned int oldval, unsigned int newval) ; @@ -243,6 +242,10 @@ # if DECODE_DENON bool decodeDenon (decode_results *results) ; # endif + + DigitalIn _recvpin; + Ticker _ticker; + irparams_t irparams; } ; //------------------------------------------------------------------------------ @@ -251,7 +254,7 @@ class IRsend { public: - IRsend () { } + IRsend (PinName sendpin) : _pwm(sendpin) { } void custom_delay_usec (unsigned long uSecs); void enableIROut (int khz) ; @@ -327,6 +330,8 @@ # if SEND_PRONTO void sendPronto (char* code, bool repeat, bool fallback) ; # endif + + PwmOut _pwm; } ; #endif