Ausgangszustand bei Ausgangspins

Gast
@Björn Wieck

>> Welcher Zustand liegt bei AVRs an den Ausgangspins an, bevor irgendeine
>> Zuweisung erfolgt? Ist der Zustand dann unbestimmt?

>Die Ports sind als Eingang mit aktiven Pullup geschaltet.

Eingang ja, aber OHNE Pull-up. Die Ausgänge floaten (unbestimmtes 
Potential!).

Deshalb sollte ein Programm möglichst fix entweder die Pins auf Ausgang 
schalten oder die internen Pull-Ups aktivieren (wenn die Pins nciht 
durch die äussere Beschaltung auf eien gültigen Pegel gezogen werden.

MFG
Falk

Gast
@Falk

Also wäre es sinnvoll, erst das PORTx-Register zu setzen, um den Pullup 
zu aktivieren, und erst danach die Datenrichtung einzustellen?
Gast
@Unwissender

>Also wäre es sinnvoll, erst das PORTx-Register zu setzen, um den Pullup
>zu aktivieren, und erst danach die Datenrichtung einzustellen?

Das ist egal. Die Pins floaten vorher sowieso ne halbe Ewigkeit. Kaputt 
gehen sie dadurch nicht, aber der Controller zieht ggf. mehr Strom, was 
bei Batteriebetrieb ins Gewicht fallen kann.

MfG
Falk
Gast
Wenn der Ausgangszustand "Eingang, keine Pullups" ist, heißt das dann, 
dass die PORTx-Register auf 0 liegen?

Das hieße ja, wenn ich die Datenrichtung auf Ausgang schalte, 
angeschlossene LEDs sofort leuchten (Active Low).
Gast
@Unwissender

>Wenn der Ausgangszustand "Eingang, keine Pullups" ist, heißt das dann,
>dass die PORTx-Register auf 0 liegen?

So stehts im Daenblatt.

>Das hieße ja, wenn ich die Datenrichtung auf Ausgang schalte,
>angeschlossene LEDs sofort leuchten (Active Low).

Jope!

MFG
Falk
Gast
@Unwissender

>Dann macht es aber aus diesem Grund Sinn, PORTx vorab auf 1 zu setzen
>und dann erst die Richtung auf Ausgang zu schalten.

Damit die LED nicht für ein paar Takte leuchtet? Meinetwegen.
Wirklich kritische Signale brauchen sowie richtige Pull-up/Pull-downs.

MFG
Falk

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 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.