#include <TaskScheduler.h>
#define LED1 12
#define LED2 14
Scheduler scheduler;
void blink1();
void blink2();
void serial();
Task bl1(500, TASK_FOREVER, &blink1);
Task bl2(1000, TASK_FOREVER, &blink2);
Task srl(10, TASK_FOREVER, &serial);
void setup() {
pinMode(12,OUTPUT);
pinMode(14,OUTPUT);
Serial.begin(19200);
scheduler.addTask(bl1);
scheduler.addTask(bl2);
scheduler.addTask(srl);
scheduler.enableAll();
Serial.println("Task Scheduler Initialized");
}
void loop() {
scheduler.execute();
}
void blink1() {
digitalWrite(LED1, !digitalRead(LED1));
}
void blink2() {
digitalWrite(LED2, !digitalRead(LED2));
}
void serial(){
if (Serial.available() > 0)
{
char input = Serial.read();
if (input == '0')
{
Serial.println("Task stopped");
bl1.disable();
bl2.disable();
}
else if (input == '1')
{
Serial.println("Task running");
bl1.enable();
bl2.enable();
}
}
}