Standard Wert von PINB

Gast #238679
Hallo!

Welchen standard Wert hat PINB, wenn man ein Programm startet? Laut
Doku n/a, allerdings habe ich durch ausprobieren festgestellt, dass der
Start Wert immer 1 ist. Hintergrund: Ich benutze Pin 0 von PINB als
Anschluss für einen Schalter, den ich pollen will (Ja, kein Interrupt).
Ich frage als erstes ab, ob dieser gleich 0 ist (bedeutete bislang für
mich gedrückt) und nach einem delay() gleich 1 (bedeutete für mich
bislang Knopf nicht gedrückt) ist. Jetzt habe ich in der Doku von Atmel
gelesen, dass der Wert n/a ist. Was habe ich davon zu halten?

Vielen Dank!

mfg

Bastian
Gast #238681
Ok. Ich habe ihn als erstes über DDRB als Input Port gesetzt und dann
über PORTB = 0xFF die Pullups aktiviert. Reicht das oder muss ich noch
etwas zusätzlich tun?

Bastian
Moderator Persönliche Seite #238682
Das reicht, aber da es ein Eingabeport ist, spiegelt er natürlich
selbst nach dem Reset sofort die extern anliegenden Signale wieder,
daher das "N/A" (not applicable) im Datenblatt.  Es gibt für PINx
einfach keinen definierbaren Reset-Wert.

Wenn du mit den Pullups arbeitest, wirst du wohl sinnvollerweise den
Schalter nach Masse liegen haben, d.h. ein gedrückter Schalter liest
sich als 0-Bit aus.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.