Go to the documentation of this file. 1 #ifndef _IR_WHYNTER_HPP
2 #define _IR_WHYNTER_HPP
21 #define WHYNTER_BITS 32
22 #define WHYNTER_HEADER_MARK 2850
23 #define WHYNTER_HEADER_SPACE 2850
24 #define WHYNTER_BIT_MARK 750
25 #define WHYNTER_ONE_SPACE 2150
26 #define WHYNTER_ZERO_SPACE 750
82 #endif // _IR_WHYNTER_HPP
#define PROTOCOL_IS_MSB_FIRST
#define WHYNTER_ONE_SPACE
uint16_t numberOfBits
Number of bits received for data (address + command + parity) - to determine protocol length if diffe...
#define WHYNTER_HEADER_SPACE
void mark(unsigned int aMarkMicros)
Sends an IR mark for the specified number of microseconds.
void restartAfterSend()
Restarts receiver after send.
#define IRDATA_FLAGS_IS_MSB_FIRST
Just for info. Value is mainly determined by the protocol.
irparams_struct * rawDataPtr
Pointer of the raw timing data to be decoded. Mainly the data buffer filled by receiving ISR.
#define WHYNTER_HEADER_MARK
#define IR_DEBUG_PRINT(...)
If DEBUG, print the arguments, otherwise do nothing.
bool decodePulseDistanceData(uint_fast8_t aNumberOfBits, uint_fast8_t aStartOffset, unsigned int aBitMarkMicros, unsigned int aOneSpaceMicros, unsigned int aZeroSpaceMicros, bool aMSBfirst)
Decode pulse distance protocols.
uint_fast8_t rawlen
counter of entries in rawbuf
#define WHYNTER_ZERO_SPACE
bool matchSpace(unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)
Compensate for spaces shortened by demodulator hardware.
uint8_t flags
See IRDATA_FLAGS_* definitions above.
unsigned int rawbuf[RAW_BUFFER_LENGTH]
raw data / tick counts per mark/space, first entry is the length of the gap between previous and curr...
void sendWhynter(unsigned long data, int nbits)
void space(unsigned int aSpaceMicros)
Sends an IR space for the specified number of microseconds.
#define IR_DEBUG_PRINTLN(...)
If DEBUG, print the arguments as a line, otherwise do nothing.
bool matchMark(unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)
Compensate for marks exceeded by demodulator hardware.
decode_type_t protocol
UNKNOWN, NEC, SONY, RC5, ...
void sendPulseDistanceWidthData(unsigned int aOneMarkMicros, unsigned int aOneSpaceMicros, unsigned int aZeroMarkMicros, unsigned int aZeroSpaceMicros, uint32_t aData, uint_fast8_t aNumberOfBits, bool aMSBfirst, bool aSendStopBit=false)
Sends PulseDistance data The output always ends with a space.
Contains all declarations required for the interface to IRremote. Could not be named IRremote....
IRrecv IrReceiver
The receiver instance.
void enableIROut(uint_fast8_t aFrequencyKHz)
Enables IR output.