Timer
#Description
This component can be very helpful if you want to get something triggered after a certain amount of time, after something else has happened.
#Links
#Functions
#JavaScript / Node.js
Timerextends EventEmitterTimer that counts elapsed time in seconds and emits tick events at a 50 ms resolution.
#Events
| Event | Parameters | Description |
|---|---|---|
start | seconds: number | — |
tick | seconds: number | — |
change | seconds: number | — |
stop | seconds: number | — |
reset | seconds: number | — |
set | seconds: number | — |
#Methods
start()Start counting elapsed time. Has no effect if already running.
stop()Stop counting elapsed time.
reset()Reset elapsed time to zero. Restarts the interval if the timer was running.
setTo(value: number)Set elapsed time to a specific value in seconds.
#Example
import { Board, Timer } from "@blokdots/components";
const board = new Board("/dev/ttyACM0");
await board.open();
const timer = new Timer();#C++ (Arduino)
Virtual component that tracks elapsed time in seconds Emits events: tick (every 50ms), start, stop, set, reset
#Setup
#include "blokdots.h"
Timer myComponent(eventBus, MY_EVENT, MY_EVENT, MY_EVENT, MY_EVENT, MY_EVENT);#Constructor
Timer(bus, evtTick, evtStart, evtStop, evtSet, evtReset, initialValue)| Parameter | Type | Default |
|---|---|---|
bus | EventBus | required |
evtTick | uint8_t | required |
evtStart | uint8_t | required |
evtStop | uint8_t | required |
evtSet | uint8_t | required |
evtReset | uint8_t | required |
initialValue | float | 0.0 |
#Methods
getValue()→ floatGet current timer value in seconds
emittedValue()→ floatGet emitted value (same as getValue for Timer)
start()Start the timer (continues from current value)
stop()Stop the timer (pause at current value)
reset()Reset the timer to 0 and restart
setTo(newValue)Set timer to a specific value in seconds
| Parameter | Type | Default |
|---|---|---|
newValue | float | required |