38#define USE_PRESCALER_FACTOR_8 1
105 void dump(Stream &stream)
const;
108 void setup(
bool setup);
115#if USE_PRESCALER_FACTOR_8
116#define CAPTURE_PRESCALER_SETTING (_BV(CAT3(CS, CAP_TIM, 1)))
117#define CAPTURE_PRESCALER_BITS (3)
119#define CAPTURE_PRESCALER_SETTING (_BV(CAT3(CS, CAP_TIM, 0)))
120#define CAPTURE_PRESCALER_BITS (0)
122#define CAPTURE_PRESCALER_FACTOR (_BV(CAPTURE_PRESCALER_BITS))
124#if RANGE_EXTENSION_BITS > 8
138#if defined(_AVR_IOM32U4_H_)
152#elif defined(_AVR_IOM2560_H_)
178#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
179#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
180#define __CAT2(base, portname) base##portname
181#define CAT2(prefix, num) __CAT2(prefix, num)
182#define __CAT3(prefix, num, postfix) prefix##num##postfix
183#define CAT3(prefix, num, postfix) __CAT3(prefix, num, postfix)
188#if defined(DEBUG_PIN) && defined(DEBUG_PORT)
189 CAT2(PIN, DEBUG_PORT) = _BV(DEBUG_PIN);
194#if defined(DEBUG_PIN) && defined(DEBUG_PORT)
195 cbi(
CAT2(PORT, DEBUG_PORT), DEBUG_PIN);
207#if (F_CPU % 8000000) == 0
209#elif (F_CPU % 1000000) == 0
211#elif (F_CPU % 115200) == 0
static constexpr microseconds_t MICROSECONDS_T_MAX
Largest microseconds_t number possible.
uint16_t microseconds_t
Type for durations in micro seconds.
uint32_t frequency_t
Type for modulation frequency in Hz.
uint16_t milliseconds_t
Type for durations in milli seconds.
Abstract base class for all IR readers, capturing or receiving.
static constexpr size_t defaultCaptureLength
int16_t markExcess
Microseconds subtracted from pulses and added to gaps.
milliseconds_t beginningTimeout
static constexpr milliseconds_t defaultEndingTimeout
static constexpr milliseconds_t defaultBeginningTimeout
virtual bool isEmpty() const
bool timeouted
True if last receive ended with a timeout.