Forum: Mikrocontroller und Digitale Elektronik LED gegen VCC oder GND?


von Mathias O. (m-obi)


Lesenswert?

Hallo,

hab mal ne kurze Frage.
Was ist besser bzw. sinnvoller, eine LED vom Portpin gegen VCC oder 
gegen GND anzuschließen?

von Otto (Gast)


Lesenswert?

kommt darauf an, ob er nur Strom aufnehmen oder auch liefern kann - 
welcher Controller ?

Otto

von Uwe .. (uwegw)


Lesenswert?

Wenn dein Controllerpin in beide Richtungen genug Strom liefert, ist es 
praktisch egal bzw ne reine Angelegenheit der Software.
Ich schalte die LEDs meist so, wie es grad ins Layout passt: GND in der 
Nähe->LED gegen GND. VCC in der Nähe-> LED gegen VCC. Für die 
Ansteuerung schreib ich dann Makros oder Funktionen, dann merkt man in 
der SW keinen Unterschied.

von Stefan E. (sternst)


Lesenswert?

Mathias Obetzhauser wrote:

> Was ist besser bzw. sinnvoller, eine LED vom Portpin gegen VCC oder
> gegen GND anzuschließen?

Hängt davon ab, zu welchem Chip dieser "Portpin" gehört.

Folgende Alternativen sind allerdings am häufigsten:
1) Es ist egal.
2) Es ist besser, die LED an VCC anzuschließen, und mit dem Portpin nach 
GND zu schalten.

Wenn du also 2) wählst, bist du fast immer auf der richtigen Seite.

von Johannes M. (johnny-m)


Lesenswert?

Das kommt zunächst drauf an, was Du für einen Controller hast. Es gibt 
viele Controller, deren Porttreiber nur als Senke Lasten treiben können 
(Open Collector- bzw. Open Drain-Outputs) und solche, die weitgehend 
symmetrische Push-Pull-Stufen an den Ausgängen besitzen und somit in 
beiden Richtungen betrieben werden können (also als Quelle und als 
Senke).

Die AVRs besitzen z.B. Push-Pull-Endstufen und können beide Richtungen. 
Wenn man viele LEDs an einem AVR betreiben will, dann kann man einen 
Teil High-Side und einen Teil Low-Side anschließen, um den Strom auf VCC 
und GND aufzuteilen und unter den Grenzwerten zu bleiben.

von Mathias O. (m-obi)


Lesenswert?

ich benutze den Atmega16.

von Laias (Gast)


Lesenswert?

Kurze Zwischenfrage dazu:
Es ist doch auch möglich wenn eine LED über GND an den Portpin des µC 
geschaltet wird ,diese über PWM zu dimmen oder?

mfg

Laias

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

Solange die LED an einem der OCxn Pins hängt geht das sogar per 
Hardware.

von HildeK (Gast)


Lesenswert?

>Folgende Alternativen sind allerdings am häufigsten:
>1) Es ist egal.
Da stimme ich zu.
>2) Es ist besser, die LED an VCC anzuschließen, und mit dem Portpin nach
>GND zu schalten.
Ich vermute, diese Aussage stammt noch aus der alten TTL-Zeit (vor 40 
Jahren?). Da konnte ein Ausgang nur 1-2mA treiben, aber 15-20mA 
aufnehmen. Daher stammen auch noch viele Low-aktiven Signale (nCS, nOE 
...).
Eine normale CMOS Push-Pull Stufe unterscheidet da nicht mehr.

Zusatz:
3.) Es ist besser, die LED an GND anzuschließen, da bei Verwendung von 
GND-Flächen diese überall auf der Platine automatisch vorhanden ist.

Suche es dir aus. :-)

von Zorc (Gast)


Lesenswert?

Nicht vergessen .. eine moderne LED laeuft mit 100uA, man ist mit 7.5k 
an 5V dabei. Es gibt allerdings auch Leute, die moechten nicht nur etwas 
anzeigen, sondern auch etwas beleuchten, dann kann man das 10fache 
durchlassen.

von Jaecko (Gast)


Lesenswert?

100µA? wo gibts denn die?
Die "sparsamsten" die ich kenn, sind die 2mA-Teile vom Reichelt.

von Thomas K. (Gast)


Lesenswert?

Hallo!

Also die billigst-0805-LEDs von Schukat (EL17-21/R6C-AN, 3Cent/Stueck) 
betreibe ich bei 5V mit 4.7k und die sind mehr als ausreichend hell 
(ca.700uA) . Aber auf 100 komme ich auch nicht ;)

Gruss
Thomas

von Johannes M. (johnny-m)


Lesenswert?

HildeK wrote:
> Ich vermute, diese Aussage stammt noch aus der alten TTL-Zeit (vor 40
> Jahren?).
Nix 40 Jahre! Es gibt eine ganze Reihe µCs, die z.T. sogar noch 
erhältlich sind, die Open-Drain-Ausgänge haben! Ich habe z.B. noch vor 
wenigen Jahren mit dem SAB80C537 gearbeitet, und bei dem trifft das auch 
zu. Ich weiß nicht, wie das bei den Nachfolgemodellen aussieht, weil ich 
schon seit langem nichts mehr mit 8051ern gemacht habe, aber sooo lange 
gibt es serienmäßige Push-Pull-Stufen in größerer Verbreitung noch 
nicht.

> 3.) Es ist besser, die LED an GND anzuschließen, da bei Verwendung von
> GND-Flächen diese überall auf der Platine automatisch vorhanden ist.
Im Prinzip würde ich zustimmen, aber siehe mein Posting von 21:21, 
letzter Satz.

von Bensch (Gast)


Lesenswert?

> Nicht vergessen .. eine moderne LED laeuft mit 100uA, man ist mit 7.5k
an 5V dabei.

Können wir die Berechnung mal sehen?


Es gibt Gründe, die LED mit L zu treiben:

1. alte Gewohnheit...

2. der Teiber hat mehr Dampf gegen Gnd

3. der Teiber liegt nach PowerUp auf H

von (prx) A. K. (prx)


Lesenswert?

Johannes M. wrote:

> zu. Ich weiß nicht, wie das bei den Nachfolgemodellen aussieht, weil ich
> schon seit langem nichts mehr mit 8051ern gemacht habe, aber sooo lange
> gibt es serienmäßige Push-Pull-Stufen in größerer Verbreitung noch
> nicht.

Die O.C. Technik der 8051 war auch in der NMOS Ära nicht universell 
verbreitet. So hatten Portbausteine der 70er Jahre, beispielsweise aus 
den 8080, 6800/6500 und Z80 Familien, von Anfang an eine 
Richtungssteuerung und Push/Pull Stufen, wenngleich durch NMOS-Technik 
bedingt und durch TTL-Kompatbilität erleichtert der Pullup-Zweig 
wesentlich schwächer war.

von Johannes M. (johnny-m)


Lesenswert?

A. K. wrote:
> Die O.C. Technik der 8051 war auch in der NMOS Ära nicht universell
> verbreitet. So hatten Portbausteine der 70er Jahre, beispielsweise aus
> den 8080, 6800/6500 und Z80 Familien, von Anfang an eine
> Richtungssteuerung und Push/Pull Stufen, wenngleich durch NMOS-Technik
> bedingt und durch TTL-Kompatbilität erleichtert der Pullup-Zweig
> wesentlich schwächer war.
Es ging mir ja auch nur um ein Beispiel, das zeigt, dass die 
µC-Steinzeit bei weitem nicht so lange her ist, wie manch einer glauben 
mag...

Selbst die ersten AVRs (die afaik von Anfang an Push-Pull-Ausgänge 
hatten) konnten anfangs auch mehr Saft sinken als sourcen, bis dann 
irgendwann symmetrische Ausgangsstufen eingebaut wurden.

von Andy (Gast)


Lesenswert?

Kleine Randbemerkung:

3.) Der Treiber ist nach dem Powerup auf Eingang geschaltet.
Wenn Du ein npn Schalttransistor an diesen Port angeschlossen hast, um 
damit ein Relais zu treiben und einen Pull- up Widerstand auf seiner 
Basis hast, kann dies zu ungewollten Schaltvorgängen beim Einschalten 
des Gerätes führen. (Es dauert mehrere us-ms bis der Port per Software 
als Ausgang 0 konfiguriert ist)

Für eine LED, welche aktiv Strom benötigt um zu leuchten, ist die meiner 
Meinung nach nicht relevant, da ein Porteingang kein Strom liefern kann.

von Bensch (Gast)


Lesenswert?

> 3.) Der Treiber ist nach dem Powerup auf Eingang geschaltet.


In diesem Fall ja, aber das kann man nicht verallgemeinern.

Ich werde jetzt nicht anfangen, LEDs wahllos mit L oder H zu schalten, 
sondern mach's einheitlich.

von Andy (Gast)


Lesenswert?

Bin gespannt, weche MCU mir Du nennst, bei der nach einem Reset die 
Ports nicht auf Eingang geschaltet sind. Lasse mich gerne belehren. ;-)

von (prx) A. K. (prx)


Lesenswert?

Alle klassischen 8051. Die internen Pullups sind dort stets aktiv, 
weshalb die Pins gewissermassen als Ausgang "high" zur Welt kommen. 
Jeder der daran per ULN2xxx Relais anschliesst freut sich darüber.

von Bensch (Gast)


Lesenswert?

> Bin gespannt, weche MCU mir Du nennst,

LEDs kann man ja auch nur an MCUs anschliessen, gell?

Diskutier ruhig weiter, während ich die nächsten 1000 bereits mit L 
schalte- und zwar egal an welchem Baustein.

von Ohh (Gast)


Lesenswert?

Die moderne gruene high efficiency LED im 1206  hat nicht wie ueblich 
2.3V, sondern so um die 3.2V. Dh an 5V mit 7.5k fliessen noch 240uA. Die 
sind da noch gut sichtbar.

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.