@agmue: Entschuldige, dass ich mich da eingemischt habe. Hatte das die Tage schon mal geschrieben, war aber nicht sicher, ob es benötigt wird.
@tim:
Fehlt ja dann nur noch das hier:
digitalWrite(Blitzer, !digitalRead(Blitzer));
Was passiert da eigentlich?
Man muss das von innen nach außen auflösen:
1. digitalRead(Blitzer) kann LOW oder HIGH liefern - je nachdem, ob das Ding gerade aus- oder eingeschaltet ist.
2. ! --> invertiert das Ergebnis vom read: aus (LOW) --> ein (HIGH) bzw. ein (HIGH) --> aus (LOW)
3. das kannst Du selbst.
Am Ende wird also einfach der Pinstatus invertiert.
Pfiffig, oder?