User Tools

Site Tools


en-us_commands:reference:iton

This is an old revision of the document!


Table of Contents

Iton()

Iton() (On Delay Timer) returns true only after the condition has remained ON for a specified time.

Iton command operation flow

bool Iton(uint8_t timer_id, bool state, unsigned long delayTime)

Commands

Command Arguments Return Value Operation
Iton(timer_id, state, delayTime) uint8_t timer_id — Timer number. Supports 0 ~ 255
bool state — Timer input state
unsigned long delayTime — Preset time in ms
bool (On Delay Timer) returns true only after the condition has remained ON for a specified time.

Example

void loop() {
  bool run = digitalRead(0);
 
  if (Iton(40, run, 1000)) {
    digitalWrite(13, HIGH);
  } else {
    digitalWrite(13, LOW);
  }
}

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 in loop(). Call it from a timer interrupt with a sufficient interval only when long delay() calls or debug output slow down loop().
  • Do not use the default ItimerSet() together with tone() using Timer2 or analogWrite() 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 Itimer callback per hardware timer.
  • Defining an ISR for the same timer directly in the sketch may conflict with Itimer operation.
  • ItimerStopAll() stops only hardware interrupt timers. It does not reset PLC-style timer states such as Iton, Itof or Itmr.

← Built-in Command List

en-us_commands/reference/iton.1788785568.txt.gz · Last modified: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki