Die Led 0 leuchtet für einen Moment auf, dann jedoch leuchten beide, das ist da du den Sleep-Befehl vergessen (oder absichtlich entfernt) hast. Dadurch erhält der Controller das Signal einer Linie gleich mehrfach und springt dadurch sofort (ohne sichtbare Verzögerung) in den else-Zweig, da er die Schleife ja sofort wieder ausführt.
Versuchs mal so:Des weiteren würde ich mal schaun ob die Initialisierung der White, Black bzw. Ground-Variable sicher stimmt. Darin könnte ein Fehler liegen den ich nicht überprüfen kann da ich deinen Bot eigentlich nicht kenne (kann nur C programmierenCode:#include "qfixBobbyBoard.h" #include "qfixSlaveBoard.h" BobbyBoard links; SlaveBoard rechts; int main() { while (!links.button(0)) ; int white = links.analog(3); while (!links.button(1)) ; int black = links.analog(3); int ground = int((white+black)*0.55); int blub=0; while (true) { if (links.analog(3) > ground){ } else { if (blub == 0){ links.ledOn(0); blub = blub + 1; } else { links.ledOn(0); links.ledOn(1); } } sleep(10); //oder einen anderen, längeren Wert, hängt von der Breite der Linie ab } })






Zitieren
)


Lesezeichen