Hallo, ich versuche momentan eine LED an meinem uC zu betreiben. Hierzu habe ich die Pins P2.4 und P2.5 mit einem Vorwiderstand und einer LED gegen Ground verbunden. Der Widerstand ist mit ca 800 Ohm dimensioniert, damit sich bei einer Versorungsspannung von 5 V ungefähr ein Strom von 3-4 mA einstellt. Wenn ich testhalber das Ende des Widerstands, welches normalerweise mit dem Pin kontaktiert ist auf Vcc hänge, leuchet wie erwartet die LED :-) Wenn der Pin nicht belastet wird, stellt sich auch schön meine gewünschte Spannung ein. 5Volt für logisch 1 und 0 Volt für logisch 0. Sobald ich jedoch die LED an den Pin hänge, bricht die Spannung auf ca 1,8 Volt ein, es sieht also so aus, als könne der Pin den Strom nicht liefern. Im Datenblatt ist er aber mit 10mA Maximal-Strom für den Pin und 15mA für den Port spezifiziert. Umgekehrt (also LED mit Widerstand fest mit Vcc verbunden und der Pin zieht die andere Seite im Leuchtfall auf GND) funktioniert des ganze wunderbar. Des bringt mir nur leider nix, weil ich folgende Verschaltung realisieren will. An einem Pin hängt der Vorwiderstand. An diesem Vorwiderstand werden 2 LEDs mit umgekehrter Durchlassrichtung angeschlossen und die andere Seite der LEDs mit dem 2ten Pin. Nun kann ich durch High Schalten von Pin1 und Low Schalten von Pin2 die eine LED zu leuchten bringen, durch Low Schalten von Pin´1 und High Schalten von Pin2 die andere. (Ist eigentlich ein wenig schwachsinnig, aber so sind nun mal die Vorgaben vom Kunden). Kenn jemand eine Möglichkeit, wie ich eine ähnlich Charakteristik erreichen kann, unter Verwendung meiner beiden Pins und vielleicht 2 Transistoren oder ähnlichem? Ich bin für alle Vorschläge zur Lösung/Klärung des Problems/der Probleme dankbar. Viele Grüße Florian
Hallo nochmal, hab noch was vergessen. Muss vielleicht noch ein Registereintrag gesetzt werden, damit der Ausgang den Strom liefern kann? Vielen Dank nochmals
Ohne externen Treiber wird das wohl nix, da 8051er afaik nur nach GND treiben können.
@ Florian Waitzinger (Firma AEG ID) (duensch) >Umgekehrt (also LED mit Widerstand fest mit Vcc verbunden und der Pin >zieht die andere Seite im Leuchtfall auf GND) funktioniert des ganze >wunderbar. Logisch, die 8051er haben Open Collector Ausgänge. Siehe Ausgangsstufen Logik-ICs. >Pin1 und Low Schalten von Pin2 die eine LED zu leuchten bringen, durch >Low Schalten von Pin´1 und High Schalten von Pin2 die andere. Dafür braucht man Push-Pulll Ausgänge. > (Ist >eigentlich ein wenig schwachsinnig, aber so sind nun mal die Vorgaben >vom Kunden). >Kenn jemand eine Möglichkeit, wie ich eine ähnlich Charakteristik >erreichen kann, unter Verwendung meiner beiden Pins und vielleicht 2 >Transistoren oder ähnlichem? Ja, pack die Ansteuerung in die Software ;-) Wen denn Hardware sein muss (was vollkommener Nonsens ist), dann muss halt ein Push-Pull Treiber her. Ein einfacher 74HC04 ist dein Freund. Jeweils zwei davon in Reihe hinter deine Ausgäge und du hast wunderbare, nichtinvertierte Push-Pull Ausgänge. MFG Falk
Die 8051 haben nen open-drain Ausgang. Bei 0-1-Wechsel treiben sie kurz mal 5mA, bei high 500µA und bei Last, die auf low zieht, sinds nur noch 50µA. Im Dunkeln solltest Du die LED glimmen sehen. Wenn Du die LEDs nicht gegen VCC schalten kannst, brauchst Du nen Treiber (74HC04) dahinter. Peter
Vielen Dank für die Tips, ich werde einfach einen 2-Kanal Inverter hinter die Ausgänge packen, also jeweils einen pro Kanal. (Mit der Invertierung der Signale werd ich fertig :-) ) Hab grad mal ne Fädelversion angeschlossen, geht wie erwartet wunderbar. Die LEDs haben in der Tat ein klein wenig geleuchtet, aber halt wirklich ganz wenig. Nochmals vielen Dank und bis bald mal wieder
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.