stereolog
18.08.2011, 17:01
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:
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;
}
Das sollte passieren:
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
statusLEDs.LED2 = bumper_right;
ersetze durch
statusLEDs.LED2 = (!(!bumper_right));
funktioniert es wie erwartet...was ist da denn los?!?
Gruß, Benny
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:
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;
}
Das sollte passieren:
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
statusLEDs.LED2 = bumper_right;
ersetze durch
statusLEDs.LED2 = (!(!bumper_right));
funktioniert es wie erwartet...was ist da denn los?!?
Gruß, Benny