en-us_commands:reference:itimerstart
This is an old revision of the document!
Table of Contents
ItimerStart()
ItimerStart() starts the configured callback timer.
bool ItimerStart()
bool ItimerStart(uint8_t timerNumber)
Commands
| Command | Arguments | Return Value | Operation |
|---|---|---|---|
ItimerStart() | None | bool | Starts the configured callback timer. |
Example
volatile bool fastTick = false; void onFastTimer() { fastTick = true; } void setup() { ItimerSet(3, 100, onFastTimer); ItimerStart(3); } void loop() { if (fastTick) { fastTick = false; } }
Precautions
- Timer interrupt callbacks run inside an ISR. For safety, change only flags in the callback and perform actual control processing in
loop(). - Do not use slow or interrupt-dependent code such as
delay(),Serial, I2C or SPI in callbacks. - Normally, call
ImodbusRTU()repeatedly inloop(). Call it from a timer interrupt with a sufficient interval only when longdelay()calls or debug output slow downloop(). - Do not use the default
ItimerSet()together withtone()using Timer2 oranalogWrite()on Timer2 PWM pins. - Explicitly using Timer1, Timer3, Timer4 or Timer5 may conflict with PWM, analog output or high-speed counter functions using that timer.
- Configure only one
Itimercallback per hardware timer. - Defining an ISR for the same timer directly in the sketch may conflict with
Itimeroperation. ItimerStopAll()stops only hardware interrupt timers. It does not reset PLC-style timer states such asIton,ItoforItmr.
en-us_commands/reference/itimerstart.1788785568.txt.gz · Last modified: by 127.0.0.1
