#include <SCoop.h>
#define led1 8
#define led2 9
defineTask(myTask1)
void myTask1::setup() {
trace("task1setup");
pinMode(led1, OUTPUT);
}
void myTask1::loop() {
digitalWrite(led1, HIGH); sleepSync(50);
digitalWrite(led1, LOW); sleepSync(50);
}
defineTask(myTask2)
void myTask2::setup() {
trace("task2setup");
pinMode(led2, OUTPUT);
}
void myTask2::loop() {
digitalWrite(led2, HIGH); sleepSync(200);
digitalWrite(led2, LOW); sleepSync(200);
}
defineTimerRun(Timer1,100)
{ if (Serial.available()) {
char c = Serial.read();
Serial.print(c);Serial.println(" key pressed");
if (c=='a') myTask1.pause();
if (c=='b') myTask1.resume();
} }
void setup() {
Serial.begin(57600);
while (!Serial);
mySCoop.start();
}
void loop() {
Serial.println("do whatever you want here also");
mySCoop.sleep(3500); //这是针对loop()的延迟,但是必须要加
}