Hallo,
Also ich bin gerade dabei für meinen Roboter eine Drehzahlmessung / Odometrie mit hilfe von 2 Gabellichtschranken zu basteln.
Dabei habe ich die Schaltung aus der RN-Wiki nachgebaut (http://www.rn-wissen.de/index.php/Gabellichtschranke).
Jetzt eine kleine Verständnisfrage dazu.
Wenn die Schranke nicht blockiert, dann kommt laut Wiki die logische 1 am Controller an.
Wenn die Schranke blockiert ist, dann kommt folglich eine 0 am Controller an.
Ich habe jetzt aber eben eine Verständnisfrage, weil ich gerade etwas auf der Leitung stehe.
1.) Warum kommt am Controller eine 0 an, wenn die Schranke blockiert ist? Der Pin ist ja eigentlich trotzdem noch mit +5V verbunden. Woher komtm dann plötzlich der LOW-Zustand am Controller?
2.) Wie muss dann der Pin am Controller konfiguriert werden? (Angenommen PB0)
Wie muss jetzt der PB0 am PORTB konfiguriert werden? Einfach garnicht, weil es ein Eingangspin ist?Code:DDRB = (0<<PB0); //Weil der PB0 ja ein Eingang sein soll
Die entsprechende Abfrage wäre dann:
Ist das so richtig?Code:if(PINB & (0<<PB0)) //also wenn die Schranke blockiert ist { //do something }
LG
ijjiij







Zitieren



Lesezeichen