Forum: Mikrocontroller und Digitale Elektronik wann PullUp / wann PullDown ?


von KoE (Gast)


Lesenswert?

Guten Abend,

Ich bin gerade am Assembler Tutorial. Ich verstehe den Sinn und zweick 
eines Pull-Widerstandes. Was ich nicht begreife ist :

Wann verwendet man einen Pull-Up Widerstand ?
Wann verwendet man einen Pull-Down Widerstand ?

Wenn ich ein Pull-Up Widerstand verwende wird der Zustand logisch 1, 
solange der Taster offen ist.
Sobald der Taster gedrückt wird logisch 0.

Wenn ich einen normalen Lichtschalter drücke fängt das Licht an zu 
brennen.
Dies ist für mich eine logisch 1. Mit einem Pull-Up also genau 
umgekehrt.

Oder hat man mit einem Pull-Down einen speziellen Nachteil da im 
Tutorial nur der Pull-Up behandelt wird ?

Gut währe ein einfaches praktisches Beispiel.

Freundliche Grüsse
Koe

von Max H. (hartl192)


Lesenswert?

Der Pullup hat den Vorteil, dass er im AVR schon eingebaut ist. Die 
invertierung ist in Software kein Problem.

von Jan H. (jan_m_h)


Lesenswert?

Die AVRs zum Beispiel haben einen eingebauten PullUp. Außerdem braucht 
man PullUp bei open Collector Ausgängen, welche nach Masse schalten.

von Ulrich F. (Gast)


Lesenswert?

Ich halte das für völlig egal!
Man nimmt das, was schaltungstechnisch sinnvoll erscheint.

Wichtiger ist:
Sichereitseinrichtungen NC

Ansonsten:
Normale Schalter und Taster alle NO

Aktoren:
Bevorzugt per High Side Switch

von Fpgakuechle K. (Gast)


Lesenswert?

KoE schrieb:

>
> Wann verwendet man einen Pull-Up Widerstand ?
> Wann verwendet man einen Pull-Down Widerstand ?
>
 > Gut währe ein einfaches praktisches Beispiel.

https://en.wikipedia.org/wiki/Wired_logic_connection
https://de.wikipedia.org/wiki/Open-Collector-Ausgang



MfG,

von KoE (Gast)


Lesenswert?

Jan H. schrieb:
> Die AVRs zum Beispiel haben einen eingebauten PullUp. Außerdem braucht
> man PullUp bei open Collector Ausgängen, welche nach Masse schalten.

Ah... Ich habe nicht verstanden warum man in den Mikrocontrollern einen 
Pull-Up verbaut, wenn ein Pull-Down logischer währe.

Aber wenn man bei open Collector Ausgägen eine Pull-Up benötigt ist es 
natürlich nun klar das dies nachher mit der Software einfacher zu ändern 
ist.

Besten Dank an alle für die rasche Antwort!

von Max H. (hartl192)


Lesenswert?

Das mit dem Pullup hat auch historische Gründe: Bei TTL-Eingängen war 
der Pullup prinzipbedingt schon eingebaut und ein Pulldown hätte 
Ruhestrom verbraucht.

von (prx) A. K. (prx)


Lesenswert?

KoE schrieb:
> Ah... Ich habe nicht verstanden warum man in den Mikrocontrollern einen
> Pull-Up verbaut, wenn ein Pull-Down logischer währe.

Der eigentliche Grund liegt in der Geschichte. Die früheren TTL und NMOS 
Bausteine waren stark asymmetrisch an Aus- und Eingang. Sowohl bei den 
Spannungen als auch bei den fliessenden Strömen. Pullups waren effizient 
machbar, Pulldowns nicht. Die Technik hat sich seither geändert, die 
Gewohnheit ist geblieben.

von Irgendwer (Gast)


Lesenswert?

KoE schrieb:
> Ah... Ich habe nicht verstanden warum man in den Mikrocontrollern einen
> Pull-Up verbaut, wenn ein Pull-Down logischer währe.

Vorallem sollte man hier nicht von einen einzigen µC auf alle anderen 
Schließen. Es gibt genug Typen da kann man beides Konfigurieren.

von Jan H. (jan_m_h)


Lesenswert?

A. K. schrieb:
> Der eigentliche Grund liegt in der Geschichte. Die früheren TTL und NMOS
> Bausteine waren stark asymmetrisch an Aus- und Eingang. Sowohl bei den
> Spannungen als auch bei den fliessenden Strömen.

Ich nehme an, weil ein NPN am besten gegen Masse schaltet und PNPs 
schlechtere Eigenschaften haben als ein gleich großer NPN? Stimmt diese 
Vermutung so?

von JANE (Gast)


Lesenswert?

KoE schrieb:
> Wenn ich einen normalen Lichtschalter drücke fängt das Licht an zu
> brennen.

Wenn dein Licht zu brennen anfängt hast du ganz andere Probleme als pull 
up oder down.

Pulls sind dazu da einen definierten Zustand zu haben wenn dein Programm 
oder Controller noch nicht Laufen. Stichwort Tri-State

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Das hatten wir gerade im 
Beitrag "Re: Übliche Beschaltungsregel: Welche Richtung?"
> … daran, dass man bei verschiedenen
> Spannungsversorgungs-Pegeln in der Regel eine gemeinsame Masse hat. Mit
> "open collector" bzw. "open drain"  hat man dann einen Pegelwandler.

von WehOhWeh (Gast)


Lesenswert?

Jan H. schrieb:
> Ich nehme an, weil ein NPN am besten gegen Masse schaltet und PNPs
> schlechtere Eigenschaften haben als ein gleich großer NPN? Stimmt diese
> Vermutung so?

Nein, das sind ziemlich sicher keine Bipolartransistoren. In keinem 
ATMEGA dürften Bipolartransistoren drin sein (außer parasitäre 
vielleicht).

Und Widerstände sind das ziemlich sicher auch nicht, sondern 
Stromquellen, die als Ladungspumpe realisiert sind. Ein Blick ins 
Datenblatt dürfte Klarheit schaffen - da steht meist ein 
Pullup/Pulldown-Strom drin.

Im Übrigen muss man im Einzelfall genau schauen, was man hernimmt. 
Wichtig ist auch der Status der Pulls im Reset, wieviel Strom die 
liefern , welchen Spannungsabfall die bei sehr geringen Strömen haben 
unsw usf.

-> eine pauschale Antwort gibt es nicht.
-> hängt vom µC ab.

von Jan H. (jan_m_h)


Lesenswert?

Ich bezog mich auf die historischen Gründe. Das moderne ICs wohl eher 
keine bipolaren Transistoren haben ist mir klar. AVRs haben ja sowieso 
symmetrische Treiber für die Ausgänge.

Ich wollte eher wissen, was für technische Gründe es gab, das ganze so 
rum einzuführen.

von Peter D. (peda)


Lesenswert?

Pullups werden häufiger benötigt, z.B. bei Bussen (1-Wire, I2C).

Auch ist es bei Kontakten ungefährlicher, wenn sie gegen GND schalten.
Schalten sie gegen VCC und ist ein Kurzschluß auf der Leitung gegen 
Gehäuse/Schirm, stürzt Dein MC ab bzw. Deine Batterie/Spannungsregler 
erhitzt sich.

Ansonsten ist dem MC schnurzegal, was Ein/Aus und was 0/1 ist, das sind 
nur Namen.

von Uwe K. (ukhl)


Lesenswert?

Ein Vorteil von Pull-UP ist, dann man nicht auf die Vcc Spannung achten 
muss die man zum Schalten verwendet.
Das macht sich bemerkbar, wenn man mit mehreren Spannungen arbeitet.
Der 5 V Kreis wird mit der gleichen Masse wie der 3,3 V Kreis 
geschaltet.
Da genügen 3 Leitungen. Schalter 1, Schalter 2 und Masse.
Beim Pull-DOWN müsste man 4 Leitungen haben, da man mit der passenden 
Spannung schalten muss. Und man muss bei Verdrahten mehr aufpassen.

Ich würde immer den Pull-UP vorziehen auch wenn es bei Programmieren 
nervt.

von (prx) A. K. (prx)


Lesenswert?

Jan H. schrieb:
> Ich nehme an, weil ein NPN am besten gegen Masse schaltet

Soweit ja.

> und PNPs
> schlechtere Eigenschaften haben als ein gleich großer NPN? Stimmt diese
> Vermutung so?

Aber hier nicht mehr.

TTL verwendete ausschliesslich NPN-Transistoren und NMOS ausschliesslich 
N-Kanal MOSFETs.

Aber eben weil das so ist, ist die Pulldown-Strecke dieser Technologien 
stärker ausgeprägt als die Pullup-Strecke. Und deshalb sind auch die 
Pegel stark asymmetrisch. Bei 5V TTL liegt der Schaltpunkt um die 1,5V 
herum. Schon deshalb ist mit R hochziehen einfacher als runterziehen. 
Dann kommt noch der bei Low-Pegel nicht unerhebliche Eingangsstrom dazu, 
während der Eingangsstrom bei High-Pegel viel geringer ist.

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

Rechenbeispiel für TTL SN5400:

Pullup: (4,5V - 2,0V) bei 40µA. Ergibt R <= 62,5 kOhm.

Pulldown: 0,8V bei 1,6mA. Ergibt R <= 500 Ohm. Ein normaler TTL Ausgang 
war jedoch nicht in der Lage, diesen Pulldown sicher hochzuziehen. Ein 
von normalem TTL angesteuerter Pulldown war also überhaupt nicht möglich 
und ein per Schalter angesteuerter hätte viel mehr Strom verbraucht.

Das ist natürlich Schnee von vorgestern. Aber dadurch entstand diese 
Gewohnheit. Im Kontext von Mikrocontrollern ist auch die 
Port-Charakteristik der ersten NMOS Typen relevant. So waren an den 
Open-Drain Ports des Klassikers 8051 auch nur Pullups sinnvoll.

Und weil die Gewohnheit so ist, besteht auch bei CMOS oft kein Zwang, 
die Ports symmetrisch zu bauen. Manche sind es, andere können mehr Strom 
runterziehen als hochziehen. Andersrum ist selten. Spart Platz bei den 
aufwändigeren PMOS Transistoren.

: Bearbeitet durch User
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.