//-----------------------------------------------------------
// BBWAS1:
const int PIN_LED_AMPEL_RECHTS_ROT = 18;
hw_timer_t *timer = NULL; // Timer-Objekt
//-----------------------------------------------------------
void IRAM_ATTR onTimer() {
  // ISR (Interrupt Service Routine): Wird bei jedem Timer-Interrupt ausgeführt
  static bool ledState = false;
  ledState = !ledState; // Zustand der LED invertieren
  
  digitalWrite(PIN_LED_AMPEL_RECHTS_ROT, ledState);
}
//-----------------------------------------------------------
void setup(void) {
  //---
  // UART starten (115200 Baud)
  Serial.begin(115200);
  //---
  // BBWAS1
  pinMode(PIN_LED_AMPEL_RECHTS_ROT, OUTPUT);
  //---
  // Timer 0 initialisieren
  timer = timerBegin(10000000);             // Timer 0, Prescaler 80 (1 MHz Takt), Zählung nach oben
  timerAttachInterrupt(timer, &onTimer); // Interrupt-Funktion zuweisen
  timerAlarm(timer, 10000000, false, 0);
  //timerAlarm(timer, 10000000, true, 3);
}
//-----------------------------------------------------------
void loop(void) {
  //
  delay(2000);
  //timerAlarm(timer, 10000000, false, 0);
}