CallbackTimer.h
Go to the documentation of this file.
159 __forceinline CallbackTimer& IRAM_ATTR initializeUs(TimerCallback callback, void* arg = nullptr)
172 __forceinline CallbackTimer& IRAM_ATTR initializeUs(TimeType microseconds, TimerCallback callback,
179 __forceinline CallbackTimer& IRAM_ATTR initializeUs(TimeType microseconds, InterruptCallback callback = nullptr)
186 __forceinline CallbackTimer& IRAM_ATTR initializeMs(TimerCallback callback, void* arg = nullptr)
199 __forceinline CallbackTimer& IRAM_ATTR initializeMs(uint32_t milliseconds, TimerCallback callback,
206 __forceinline CallbackTimer& IRAM_ATTR initializeMs(uint32_t milliseconds, InterruptCallback callback = nullptr)
std::enable_if< std::is_integral< T >::value, String >::type toString(T value)
Definition: BitSet.h:481
void setInterval()
Set timer interval in specific time unit (static check)
Definition: CallbackTimer.h:351
CallbackTimer & initializeUs(TimerCallback callback, void *arg=nullptr)
Initialise timer in microseconds (static check) with Timer Callback and optional argument.
Definition: CallbackTimer.h:159
bool checkInterval(TickType ticks) const
Check timer interval is valid.
Definition: CallbackTimer.h:286
CallbackTimer & initializeMs(TimerCallback callback, void *arg=nullptr)
Initialise hardware timer in milliseconds (static check) with Timer Callback and optional argument.
Definition: CallbackTimer.h:186
NanoTime::Time< TimeType > getIntervalUs() const
Get timer interval in microseconds.
Definition: CallbackTimer.h:265
static constexpr void checkIntervalMs()
Check timer interval in milliseconds is valid (static check)
Definition: CallbackTimer.h:311
static TickType usToTicks(TimeType time)
Convert microsecond count into timer ticks.
Definition: CallbackTimer.h:109
bool setIntervalMs(uint32_t milliseconds)
Set timer interval in milliseconds.
Definition: CallbackTimer.h:378
static constexpr Millis millis()
Get a millisecond time source.
Definition: CallbackTimer.h:91
NanoTime::TimeSource< Clock, NanoTime::Microseconds, TimeType > Micros
Definition: CallbackTimer.h:82
void setCallback(InterruptCallback callback)
Set timer trigger callback.
Definition: CallbackTimer.h:406
static constexpr uint64_t ticksToUs()
Convert timer ticks into microseconds.
Definition: CallbackTimer.h:115
static constexpr void checkInterval()
Check timer interval in specific time unit is valid (static check)
Definition: CallbackTimer.h:305
CallbackTimer & initializeMs(InterruptCallback callback=nullptr)
Initialise hardware timer in milliseconds (static check) and optional Interrupt Callback (no arg)
Definition: CallbackTimer.h:193
bool setIntervalUs(TimeType microseconds)
Set timer interval in microseconds.
Definition: CallbackTimer.h:366
CallbackTimer & initializeUs(TimeType microseconds, TimerCallback callback, void *arg=nullptr)
Initialise timer in microseconds with Timer Callback and optional argument.
Definition: CallbackTimer.h:172
CallbackTimer & initializeUs(InterruptCallback callback=nullptr)
Initialise timer in microseconds (static check) with optional Interrupt Callback (no argument)
Definition: CallbackTimer.h:166
bool callbackSet
User has provided callback function.
Definition: CallbackTimer.h:423
void setIntervalUs()
Set timer interval in microseconds (static check)
Definition: CallbackTimer.h:372
NanoTime::Time< uint32_t > getIntervalMs() const
Get timer interval in milliseconds.
Definition: CallbackTimer.h:271
bool setInterval(TimeType time)
Set timer interval in timer ticks.
Definition: CallbackTimer.h:360
void setIntervalMs()
Set timer interval in milliseconds (static check)
Definition: CallbackTimer.h:384
bool start(bool repeating=true)
Start timer running.
Definition: CallbackTimer.h:215
CallbackTimer & initializeUs(TimeType microseconds, InterruptCallback callback=nullptr)
Initialise timer in microseconds with optional Interrupt Callback (no arg)
Definition: CallbackTimer.h:179
CallbackTimer & initializeMs(uint32_t milliseconds, TimerCallback callback, void *arg=nullptr)
Initialise hardware timer in milliseconds with Timer Callback and optional argument.
Definition: CallbackTimer.h:199
NanoTime::TimeSource< Clock, NanoTime::Milliseconds, uint32_t > Millis
Definition: CallbackTimer.h:81
CallbackTimer & initializeMs(uint32_t milliseconds, InterruptCallback callback=nullptr)
Initialise hardware timer in milliseconds with optional Interrupt Callback (no arg)
Definition: CallbackTimer.h:206
CallbackTimer & initialize(TimeType time, TimerCallback callback, void *arg=nullptr)
Initialise timer with an interval and callback.
Definition: CallbackTimer.h:150
static constexpr Micros micros()
Get a microsecond time source.
Definition: CallbackTimer.h:97
static constexpr uint64_t usToTicks()
Convert microsecond count into timer ticks.
Definition: CallbackTimer.h:103
TickType getInterval() const
Get timer interval in clock ticks.
Definition: CallbackTimer.h:277
static constexpr void checkInterval()
Check timer interval in ticks is valid (static check)
Definition: CallbackTimer.h:295
static constexpr void checkIntervalUs()
Check timer interval in microseconds is valid (static check)
Definition: CallbackTimer.h:317
bool isStarted() const
Check if timer is started.
Definition: CallbackTimer.h:259
void setInterval()
Set timer interval in timer ticks (static check)
Definition: CallbackTimer.h:340
static TimeType ticksToUs(TickType ticks)
Convert timer ticks into microseconds.
Definition: CallbackTimer.h:121
bool setInterval(TickType ticks)
Set timer interval in timer ticks.
Definition: CallbackTimer.h:325
bool intervalSet
User has set valid time interval.
Definition: CallbackTimer.h:424
CallbackTimer & initialize(TimerCallback callback, void *arg=nullptr)
Initialise timer with an interval (static check) and callback.
Definition: CallbackTimer.h:135
void setCallback(TimerCallback callback, void *arg=nullptr)
Set timer trigger callback.
Definition: CallbackTimer.h:393
void(*)(void *arg) TimerCallback
Interrupt-compatible C callback function pointer.
Definition: CallbackTimer.h:23
void setCallback(Callback callback)
Set a callback function that is invoked on each change of the current allocation.
Time< T > time(Unit unit, T value)
Helper function to create a Time and deduce the type.
Definition: NanoTime.h:423
CallbackTimerApi(const CallbackTimerApi &)=delete
Class template for accessing a Clock in specific time units.
Definition: NanoTime.h:630
static constexpr uint64_t ticksToTime()
Get the time for a given number of clock ticks.
Definition: NanoTime.h:728
static constexpr uint64_t timeToTicks()
Get the number of ticks for a given time.
Definition: NanoTime.h:718