Arduino mit 4 Tastern

Die Befehle stehen größtenteils. Aber wie bekomme ich eine vernünftige Unterbrechung wenn z.B. die Befehle von Taster 1 ablaufen und ich Taster 3 drücke?
Bis jetzt habe ich es so gelöst das ich einen fünften Taster habe der das Board resettet und ich dann einen neuen Taster drücken kann.
Geht es das ich eine permanente Abfrage habe welche dann den aktuellen Programmablauf unterbricht und mit dem anderen Befehlen weitermacht?

Anstatt

if (taste 1 gedrückt) ausgänge 1 setzen
if (taste 2 gedrückt) ausgänge 2 setzen
if (taste 3 gedrückt) ausgänge 3 setzen
if (taste 4 gedrückt) ausgänge 4 setzen
if (taste 5 gedrückt) alle ausgänge löschen

kannst Du:

if (taste 1 gedrückt) alle ausgänge löschen und ausgänge 1 setzen
if (taste 2 gedrückt) alle ausgänge löschen und ausgänge 2 setzen
if (taste 3 gedrückt) alle ausgänge löschen und ausgänge 3 setzen
if (taste 4 gedrückt) alle ausgänge löschen und ausgänge 4 setzen

Du darfst aber kein delay() verwenden sondern mit millis() arbeiten sodaß die Tasten immer wieder abgefragt werden.

Grüße Uwe