Forum: Mikrocontroller und Digitale Elektronik Ausgangszustand bei Ausgangspins


von Unwissender (Gast)


Lesenswert?

Hallo!

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

von Björn W. (bwieck)


Lesenswert?

Unwissender wrote:
> Hallo!
>
> 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.

Gruß
Björn

von Falk (Gast)


Lesenswert?

@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


von Björn W. (bwieck)


Lesenswert?

Falk wrote:
> @Björn Wieck
> Eingang ja, aber OHNE Pull-up. Die Ausgänge floaten (unbestimmtes
> Potential!).

@ Falk

Danke für den Hinweis.

Gruß
Björn

von Unwissender (Gast)


Lesenswert?

@Falk

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

von Falk (Gast)


Lesenswert?

@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

von Unwissender (Gast)


Lesenswert?

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).

von Falk (Gast)


Lesenswert?

@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

von Unwissender (Gast)


Lesenswert?

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

von Falk (Gast)


Lesenswert?

@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

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.