/**************************************************
 Beispiel: Kooperatives Multitasking
***************************************************/
//--------------------------------------------------
// Pin-Zuweisungen
#define PIN_LED_AMPEL_RECHTS_ROT  18
// Statusvariablen
uint32_t timeStamp0 = 0;
uint32_t timeStamp1 = 0;
bool statusLED1 = 0;
//--------------------------------------------------
void setup() {
  Serial.begin(115200);
  pinMode(PIN_LED_AMPEL_RECHTS_ROT, OUTPUT);
  Serial.println("System gestartet...");
}
//--------------------------------------------------
void loop() {
  task_Serial();
  task_LED1();
}
//--------------------------------------------------
void task_Serial() {
  if (millis() - timeStamp0 >= 1000) {
    timeStamp0 = millis();
    //
    Serial.println("Hallo Kooperatives Multitasking...");
  }
}
//--------------------------------------------------
void task_LED1() {
  if (millis() - timeStamp1 >= 500) {
    timeStamp1 = millis();
    //
    statusLED1 = !statusLED1;
    digitalWrite(PIN_LED_AMPEL_RECHTS_ROT, statusLED1); 
  }
}