Hallo!
Ich hab mich als Neueinsteiger mal sehr grundlegend mit den ersten Beispielprogrammen beschäftigt und ein paar Sachen ausprobiert.
Dabei habe ich folgendes einfaches Testprogramm geschrieben:
Das sollte passieren:Code:void bumpersStateChanged(void) { statusLEDs.LED5 = bumper_left; statusLEDs.LED4 = (!bumper_left); statusLEDs.LED2 = bumper_right; statusLEDs.LED1 = (!bumper_right); updateStatusLEDs(); } int16_t main(void) { initRobotBase(); BUMPERS_setStateChangedHandler(bumpersStateChanged); while(true) { task_RP6System(); } return 0; }
Wenn der rechte Bumper gedrückt wird sollte LED1 ausgehen, dafür LED2 an. Analog beim linken Bumper und LEDs 4 und 5.
Das passiert wirklich:
Beim linken Bumper klappt alles super, rechts geht zwar LED1 beim Betätigen des Bumpers aus, LED2 geht aber NICHT an!
Noch seltsamer ist aber: Wenn ich
ersetze durchCode:statusLEDs.LED2 = bumper_right;
funktioniert es wie erwartet...was ist da denn los?!?Code:statusLEDs.LED2 = (!(!bumper_right));
Gruß, Benny







Zitieren

Lesezeichen