Hi
In setup():
digitalWrite(level, OUTPUT);
digitalWrite(level, HIGH);
macht NICHT, was Du erwartest.
Denke, bei OUTPUT soll pinMode verwendet werden.
Nach der Abfrage taster==low kannst Du Dir die Abfrage im ELSE-Zweig sparen - der Taster kann nur HIGH oder LOW sein, wenn Er nicht LOW ist, greift der Else-Zweig 'so oder so', da die Abfrage dort ==high dann auf jeden Fall erfüllt ist.
Die Benutzung von delay() möchte auch überlegt sein, es gibt nur sehr wenige Situationen, wo ein delay() nicht stört.
Spätestens, wenn Du 'was nebenbei' machen willst, stolperst Du über die delay()-Aufrufe (dabei macht der µC NICHTS, außer auf das Ende der Wartezeit zu warten).
Dazu hat die IDE ein Beispiel 'blink_without_delay' - oder hier im Forum den immer wieder gerne genommenen Nachtwächter
MfG