SwitchCase ist mir nicht unbekannt - und aufgrund der Frequenz mit der die Hauptschleife immer widerholt wird fällt dann auch kein Flackern auf ... denk ich mir gerade so.

Also:
HAUPTSCHLEIFE=>TasterA gedrückt? TasterA gedrückt gewesen? Variable setzen => Switch(Case) Auswählen => Hauptschleifen Ende (Widerholen)

Mit Interrupts ist klar das man das damit machen kann - ist dann aber wieder nicht Einsteiger Freundlich *g*. Gibts was im Netz zu SSM (SolidStateMachines) zu lesen das ihr gut findet?