...nur macht BUMPERS_setStateChangedHandler(Bumper); irgendwie nicht das was es soll. ... wird damit die in Klammern stehende Funktion ausgelöst sobald sich der Bumper status ändert
Ja, das ist so ok und in deinem Programm richtig umgesetzt.

Was fehlt/zu ändern wäre:
1. In der while(true)-Schleife: task_RP6System();
2. Anstelle von getBumperLeft/-Right müßtest du die Variablen bumper_left/-right in der Bumper()-Funktion nehmen.

Gruß Dirk

EDIT: Wieder mal zu langsam!