/**************************************************
  Beispiel 2: Präemptives Multitasking
***************************************************/
//--------------------------------------------------
// Pin-Zuweisungen
#define PIN_LED_AMPEL_RECHTS_ROT  18
//--------------------------------------------------
void setup() {
  Serial.begin(115200);
  //---
  // Funktion    = Task_LED1 
  // Name        = -
  // Stackgrösse = 8192 Word 
  // Parameter   = - 
  // Priorität   = 2 (0..16 = low..high)
  // Handle      = - 
  // Core        = 0 (0=Core 0, 1=Core 1)
  xTaskCreatePinnedToCore(Task_LED1, NULL, 8192, NULL, 2, NULL, 0);
  Serial.println("System gestartet...");
}
//--------------------------------------------------
void loop() {
  Serial.println("Hallo vom Haupttask mit Prioritaet 1...");
  delay(1000);
}
//--------------------------------------------------
void Task_LED1(void *pvParameters) {
  //---
  // setup
  pinMode(PIN_LED_AMPEL_RECHTS_ROT, OUTPUT);
  //---
  // endlos loop
  while (true) {
    digitalWrite(PIN_LED_AMPEL_RECHTS_ROT, HIGH);
    delay(500);
    digitalWrite(PIN_LED_AMPEL_RECHTS_ROT, LOW);
    delay(500);
  }
}