Hallo ich habe eine elementare Frage zum anschluß von LED an einen AVR. Es gibt ja zwei Möglichkeiten. 1. LED+ an Vcc und über 1k Widerstand an AVR PIN (wie im Tutorial) 2. AVR PIN über 470Ohm an LED+ und LED- an Masse. Man schaltet dann bei Mthode 1 die Led mit 0 an und bei Methode 2 mit 1 an. Gibt es gravierende Vor- bzw Nachteile bei den Varianten? Danke
Nein. Ein AVR kann grundsätzlich 20mA in beide Richtungen. Ausnahme: Alte AVR der AT90S-Serie. Aber die sollte man eh nicht mehr für Neuentwicklungen nutzen, da obsolet oder abgekündigt. Gruss Jadeclaw.
Mikrocontroller - oder zumindest die Atmels - können mehr Strom ableiten als liefern. Ob es noch einen anderen Grund hat? Warten wir auf die Experten. Nachtrag: Zu langsam und wohl nicht auf aktuellem Stand. Wieder etwas lernen können.
Normalerweise sind sogar 40mA pro Pin zulässig (egal ob + oder -). Allerdings dann wieder mit Einschränkungen bezüglich max. Gesamtstrom pro Port (100mA) und pro Kontroller (200mA).
Danke für die Antworten. Nehme dann die Variante mit AVR PIN => 470Ohm => LED => GND Irgendwie ist es für mein kleines Hirn schlüssiger ein Licht mit einem 1-Bit anzuschalten und mit einem O-Bit auszuschalten als umgekehrt ;-)
Warum verwendest du bei Methode 1. einen 1k Widerstand und bei Methode 2. einen 470 Ohm Widerstand ???
> 1. LED+ an Vcc und über 1k Widerstand an AVR PIN (wie im Tutorial) > 2. AVR PIN über 470Ohm an LED+ und LED- an Masse. Die Größe des Widerstandes hängt von der LED ab (Flussspannung und Strom) und nicht von der Anschlussart. Ob Du die LED High- oder Low-Side anschließt, ist für den Widerstand unerheblich. Die Spannungsabfälle an den Ausgangstransistoren des µC-Ports sind weitgehend gleich und fallen kaum ins Gewicht.
@Erik s >Mikrocontroller - oder zumindest die Atmels - können mehr Strom ableiten >als liefern. Ob es noch einen anderen Grund hat? Warten wir auf die >Experten. Das hat mit Microcontrollern wenig bis gar nichts zu tun. Das Problem ist physikalisch/technologisch bedingt. Der Transistor, welcher das Pin gegen GND schaltet ist ein N-Kanal MOSFET. Dementsprechend ist der Transistor, welcher nach VCC schaltet ein P-Kanal MOSFET. Deswegen heisst es ja auch C M O S (Complemenatary Metal Oxide Semiconductor). Physikalisch/technologisch bedingt sind P-Kanal MOSFETS bei gleicher Geometrie schwächer als N-Kanal MOSFETS. Deshalb konnten früher die ICs mehr Strom ableiten (sink) als ausgeben (source). Heute macht man einfach die P-Kanal MOSFETS grösser und hat damit symetrische Ausgänge. Das ist vor allem bei schnellen ICs mit terminierten Leitungen (SDRAM etc.) notwendig. MfG Falk
Hab die Werte aus dem Tutorial (1k) bzw eine bestehenden Schaltung (470).
Den Vorwiderstand berechnet man nach
wobei U_B die Betriebsspannung der Schaltung, U_LED die Flussspannung der Diode (bei Standard-LEDs [rot, grün, gelb] kann man näherungsweise 2 V einsetzen, bei blauen und weißen LEDs ist es i.d.R. erheblich mehr) und I_LED der Strom ist, mit dem die LED betrieben werden soll (bei Low-Current-Typen 2...5 mA, bei Standard-Typen 10...20 mA Dauerstrom).
Bei Low-Pegel ist der Strom bei gleichem internen Spannungsabfall betragsmäßig etwa 20% höher als bei High-Pegel (nachgeschaut bei ATtiny13). Die Asymmetrie der CMOS-Ausgänge entsteht, wie bereits von Falk angemerkt, durch den unterschiedlichen Drain-Source-Widerstand bei P- und N-Kanal-MOSFETs gleicher Größe. Dieser Unterschied ist durch die unterschiedliche Ladungsträgerbeweglichkeit des N- bzw. P-dotierten Halbleitermaterials bedingt und liegt bei einem Faktor von 2 bis 3. Dass der Unterschied in den Ausgangsströmen beim AVR deutlich geringer ist, deutet darauf hin, dass man bei Atmel bemüht war, ihn durch entsprechend größere P-Kanal-MOSFETs zumindest teilweise auszugleichen. Also: Wenn du's perfekt machen willst, schalte die LEDs gegen Vcc, die Nachteile sind aber nicht gravierend, wenn du's andersherum machst.
Hm, ist die Berechnung in Blindenschrift verfasst oder vergurkt nur mein Browser etwas ansonsten lesbares?
@Frank >Hm, ist die Berechnung in Blindenschrift verfasst oder vergurkt nur mein >Browser etwas ansonsten lesbares? Willkommen im Club. Mein Explorer 6.0 zeigt auch nur Braile an :-( MfG Falk
> Hm, ist die Berechnung in Blindenschrift verfasst oder vergurkt nur mein > Browser etwas ansonsten lesbares? Möglicherweise das zweite... Bei mir wirds jedenfalls korrekt angezeigt.
Um so mehr ich mich mit dem Thema beschäftige, desto weniger verstehe ich die 1k aus dem Tutorial. Ich komme bei einer normalen LED (1,6V) und 5V Betriebsspannung bei einem Diodenstrom von sagen wir mal 10mA auf gerade mal 340Ohm?
> Ich komme bei einer normalen LED (1,6V) und 5V Betriebsspannung bei > einem Diodenstrom von sagen wir mal 10mA auf gerade mal 340Ohm? Möglicherweise ist im Tut eine Low-Current-LED gemeint...
Bezüglich EMV ist das Schalten nach Masse etwas besser, da Masse meistens induktivitätsärmer als die Vcc-Leitung ist. Die ersten TTL-Familien hatten den Totempole-Ausgang, der schaltete nur nach Masse richtig durch, zu Vcc war immer ein Widerstand integriert. Besonders sparsame Menschen benutzten ihn als LED-Vorwiderstand.
@Christoph Db1uq >Bezüglich EMV ist das Schalten nach Masse etwas besser, da Masse >meistens induktivitätsärmer als die Vcc-Leitung ist. In schlechten Layouts in grauer Vorzeit vielleicht. Im Normalfall aber nicht. >Die ersten TTL-Familien hatten den Totempole-Ausgang, der schaltete nur >nach Masse richtig durch, zu Vcc war immer ein Widerstand integriert. ??? Gerade Totem-Pole wurde ja gebaut, um in BEEDE Richtungen richtig Dampf zu haben. Push-Pull! Wir reden hier ja nicht von Open Collektor oder NMOS/PMOS Geraffel. MFG Falk
> Um so mehr ich mich mit dem Thema beschäftige, desto weniger > verstehe ich die 1k aus dem Tutorial. Die 1k sind so bemessen, dass normale LEDs einigermaßen leuchten und Low-Current-LEDs nicht sofort kaputt gehen. Der Autor des Tutorials legt ja nicht fest, welcher LED-Type verwendet werden soll. Wenn du die verwendeten Bauteile genau kennst, kannst du alles natürlich genauer dimensionieren. Man muss eine LED auch nicht immer mit Maximalstrom betreiben. Die Hälfte davon lässt sie fast genau so hell leuchten, schont die LED und lässt dem µC noch Luft zum Atmen. Ausserdem sinkt der Stromverbrauch, und damit der CO2-Ausstoß, der Treibhauseffekt und die Gefahr von Überschwemmungen. Damit sparst du dir für deine Schaltung ein teueres IP68-gehäuse :D
johnny.m wrote: >> Ich komme bei einer normalen LED (1,6V) und 5V Betriebsspannung bei >> einem Diodenstrom von sagen wir mal 10mA auf gerade mal 340Ohm? > Möglicherweise ist im Tut eine Low-Current-LED gemeint... Ich denke das Tutorial wollte einfach nur auf der sicheren Seite sein. Normale LEDs leuchten noch ein bischen und Low Current Leds sind noch nicht überfordert. Werde das bei Zeiten mal ändern: dezidiert normale handelsübliche LED hinschreiben und den Widerstandswert auf 220 Ohm (mein Standard Vorwiderstand). Die Berechnung anzuführen halte ich an dieser Stelle des Tutoriums für nicht sinnvoll * zum einen hat ein Neuling selten ein Datenblatt für seine LEDs. Der kauft einfach eine Handvoll ein und damit hat sichs * zum anderen kaufen Neulinge selten Low Current Leds und wenn dann ist er nicht mehr so Neuling und weiss was er tut. ACK?
<OT> @Falk und Frank: Der Internet Explorer hat massivste Probleme mit PNG-Bilddateien. Deshalb die Blindenschrift-Effekte bei der Formeldarstellung. Man sollte deshalb, und auch aus Sicherheitsgründen den IE tunlichst nicht mehr verwenden. Egal ob Version 6 oder 7. Es gibt schließlich gute Alternativen. </OT> Gruss Jadeclaw.
@karl heinz buchegger wenn ich richtig verstanden habe hast du gesagt dass du das tuturial ändern willst. ich persönlich halte es da sehr sinnvoll wenn man den rechenvorgang anhand eines datenblattes hinschreibt. irgendwann will man ja auch lernen wie man richtig die bauteile dimensioniert und wie man auf die werte kommt. und grad in einem datenblatt finden sich neulinge immer schwer zurecht da sie nicht wissen welche werte jetzt wirklich eine rolle spielen. und die, die das nicht interessiert und nur die led zum leuchten bringen wollen, was fast den großteil betrifft, können noch immer nur den wert ablesen und irgendeine led nehmen mfg
Ich habe unter http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen#Hardware mal einen Satz und einem Link zu diesem Thread eingefügt. Damit sollte der interessierte Leser dann zukünftig nicht im Regen stehen. @ich (Gast): Nachdem deine Frage recht ausführlich beantwortet wurde, hast du vielleicht Lust, aus diesem Thread einen Atikle zu macheb und das dann aus dem Tutorial zu verlinken...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.