#include "pwtoken.h" #include "Scheduler.h" #include "recorder.h" #include "trigger.h" #include "vault.h" #include "typist.h" #include "state_machine.h" StateMachine state_machine; LEDTimer led_timer; Vault vault; Recorder recorder(&led_timer, &vault); Typist typist(&vault); Trigger trigger(TRIGGER_POLL_INTERVAL, &typist); Task * tasks[] = { &led_timer, &trigger, &recorder }; TaskScheduler scheduler(tasks, NB_ELEMENTS(tasks)); void setup() { Serial.begin(57600); pinMode(LED_YELLOW_1_PIN, OUTPUT); pinMode(LED_YELLOW_2_PIN, OUTPUT); pinMode(LED_BLUE_PIN, OUTPUT); pinMode(3, INPUT); recorder.set_state_machine(&state_machine); led_timer.set_state_machine(&state_machine); trigger.set_state_machine(&state_machine); } void loop() { scheduler.run(); // infinite loop }