Tasterabfrage beim Mega8

Gast #711920
Lesenswert?

Hallo,

mit folgender Anweisung (auf dem Mega8), frage ich doch den ersten 
Taster an PortB ab, oder?
DDRB=0x00;    //Taster
PORTB=0xFF;    //Pull-Up
if (1<<PINB0)

Im AVRSTUDIO macht er immer mit der folgenden Anweisung weiter, obwohl 
ich bei PINB0 gar keine 1 angelegt habe. Wieso?
#711932
Lesenswert?

Patrick wrote:
> Wie ist denn Dein Schalter angeschlossen? Mit dem aktivieren der
> Pull-Ups wird Ein Eingang auf 1 gezogen. Deine if-Bedingung ist also
> immer wahr. Mach doch einfach:
> if (!PINB0);
Da PINB0 als 0 definiert ist, ist !PINB0 1, also ebenfalls immer wahr. 
Erst denken, dann schreiben...

Mit den Bedenken, was die Anschlussart des Tasters angeht, stimme ich 
allerdings zu. In den meisten Fällen (und auch auf den meisten mir 
bekannten Experimentierboards) sind die Taster Low-aktiv, und 
dementsprechend gibts ne Null am Pin bei gedrückter Taste...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren