en-us_commands:reference:itimerstate
Table of Contents
ItimerState()
ItimerState() returns the running state of the default or specified callback timer.
bool ItimerState()
bool ItimerState(uint8_t timerNumber)
Commands
| Command | Arguments | Return Value | Operation |
|---|---|---|---|
ItimerState() | None | bool | Returns the running state of the default or specified callback timer. |
Example
This uses the default callback timer (Timer2). The callback changes only a flag; serial output runs in loop().
void onTimer() {} void setup() { Serial.begin(115200); if (!ItimerSet(1000, onTimer)) return; // Configure the callback and interval first. ItimerStart(); // Start the configured callback timer. } void loop() { static unsigned long lastPrint = 0; static bool stopped = false; if (!stopped && millis() >= 3000) { ItimerStop(); // Stop the default callback timer after 5 s. stopped = true; } if (millis() - lastPrint >= 1000) { lastPrint = millis(); const bool running = ItimerState(); // Check whether the default callback timer is running. Serial.println(running ? F("running") : F("stopped")); } }
Precautions
- The callback runs in an interrupt. Change only a flag there; do not call
delay(),Serial, I2C or SPI in it. - The callback timer without a timer number uses Timer2. Do not use it together with
tone()or PWM output that uses Timer2. - When specifying another hardware timer, check for conflicts with PWM, analog output and high-speed counter functions using it.
Built-in Commands in the Same Category
en-us_commands/reference/itimerstate.txt · Last modified: by 127.0.0.1
