Binärdecoder für LED Steuerung

OP #6052289
Lesenswert?

Hallo.

Ich möchte mit einem Microcontroller 4 LEDs ansteuern um damit den 
aktuellen Modus meines Programms (1-4) anzuzeigen. Da ich nicht 4 Pins 
dafür verbraten will, würde ich gerne einen Binärdecoder verwenden. Da 
ich gut zu Conrad in Essen gelange, habe ich mir diesen hier ausgesucht: 
SN74F138N

Meine Frage wäre nun ob mein Gedankengang korrekt war?
Also: Den Decoder mittels 2 Pins per MC ansteuern und damit direkt eine 
der 4 LEDs schalten (ohne Transistor).

Alternativ hätte ich hier auch ein paar (bisher nutzlose) Zähler 
herumliegen. Könnte ich evtl. einen davon für die Aufgabe einsetzten? 
Per Software sollte ich ja theoretisch einen Decoder imitieren können. 
(74HCT4040N, GAL16V8B, HEF4040BP)

Sorry, falls das alles zu kompliziert gedacht ist. Bin Neuling auf 
diesem Gebiet.

Alex
Gast #6052305
Lesenswert?

Alex B. schrieb:
> SN74F138N

Such mal nach SN74HC138N, was willst du mit der F-Serie
SN74LVC1G139 würde auch passen.

> Also: Den Decoder mittels 2 Pins per MC ansteuern und damit direkt eine
> der 4 LEDs schalten (ohne Transistor).

Wenn der Strom den du fließen lassen willst, nicht die Spezifikation der 
Ausgangsstufe überschreitet, ist das ok. Vorwiderstand nicht vergessen.
Gast #6052318
Lesenswert?

Alex B. schrieb:
> Da ich nicht 4 Pins dafür verbraten will, würde ich gerne einen
> Binärdecoder verwenden

Da brauchst du 2 pins, und einen dritten wenn du die LEDs auch 
ausschalten willst.
An 2 Pins kannst du aber auch ohne IC mit nur 2 Transistoren (und 6 
Widerständen) 4 LEDs anschliessen von denen 1 leuchtet.
An 3 Pins passen 6 LED ohne Transistoren.
Complementary Led Driving.

Schaltplan left as an excercise to the reader.
#6052331
Lesenswert?

74F138 würde funktionieren. Wobei das F damals für "fast" stand. Das 
Ding ist also nicht der Brüller beim Stromsparen. Aber dafür in Sachen 
ESD nicht allzu pinzig.
Du könntest damit mit 2 Pins immer genau eine von 4 Leds leuchten 
lassen.

Wenn Du die 2 Pins mit Reset und Clock eines Zählers verbindest, wäre 
sogar noch mehr möglich. Nur falls mal zwischen Status 1 und 2 ein 1a 
reingepopelt werden muss. Die Ansteuerung verlangt halt einmalig ein 
wenig Überlegen.
ca. 410us, um mit 10 MHz alle 12 Leds anzuwerfen, klingt jetzt auch 
nicht tragisch.
Moderator (Firma: Titel) Persönliche Seite #6052457
Lesenswert?

Alex B. schrieb:
> Ich möchte mit einem Microcontroller 4 LEDs ansteuern um damit den
> aktuellen Modus meines Programms (1-4) anzuzeigen.
Ich würde da nur 1 LED anschließen und die passend zum Modus in der 
Hauptschleife blinken lassen:
Modus 1 = _____#_____#_____#_____#____#____
Modus 2 = _____#_#_____#_#_____#_#____#_#__
Modus 3 = _____#_#_#_____#_#_#_____#_#_#___
Modus 4 = _____#_#_#_#_____#_#_#_#_____#_#_
Oder auch:
Modus 1 = _____#_____#_____#_____#___
Modus 2 = _____#_#_____#_#_____#_#___
Modus 3 = _____###_____###_____###___
Modus 4 = _____###_###____###_###____
Oder auch sonstwas...

Dann kann man das sehr leicht erweitern und um Fehlerfall sogar hektisch 
"SOS" blinken und sieht man auch gleich, ob das Programm noch irgendwie 
läuft oder irgendwie "holpert und stolpert".
Und wenn mans ganz ausgefuchst macht, dann kann man über diese LED sogar 
ein serielles Protokoll ausgeben und mit einem Fototransistor in ein 
Terminal oder einen Logicanalyzer einlesen... ;-)
Gast #6053290
Lesenswert?

Mit 74hct4040 könnte man im aktiven Programmteil so lange durchtackern, 
bis die richtige low current LED leuchtet. MR halt vielleicht HW mäßig 
verzögert steuern. Auf dem Weg zur richtigen LED stört doch ein kurzes 
Aufleuchten der anderen nicht? Dann reicht ein µC Pin.
OP #6053333
Lesenswert?

Danke für die Ideen. Ich werde den 4040 mal ausprobieren und sehen ob’s 
mir gefällt. Die Complementary Schaltung muss ich auch erstmal 
durchdringen und verstehen. Die Idee mit dem Schieberegister finde ich 
super, weil das einen weiteren Ausbau erleichtert.

Jetzt muss ich noch sehen wo ich die paar ICs zum rumspielen möglichst 
Versandkosten-günstig herbekomme.

Das Kodieren des Modus als Blinksignal passt nicht so ganz. Baue im 
Prinzip nen Joystick mit einen Rotary Encoder drauf. Rechts/Links ist 
jeweils ein Button und der Push schaltet zwischen unterschiedlichen 
Button-Paaren um.
Gast #6053336
Lesenswert?

Alex B. schrieb:

> Ich möchte mit einem Microcontroller 4 LEDs ansteuern um damit den
> aktuellen Modus meines Programms (1-4) anzuzeigen.

Wirklich nur die vier oder soll es auch einen Status "aus" geben? Wenn 
letzteres, reicht ein Binärdecoder mit zwei Eingängen nicht mehr, d.h.: 
du bräuchtest zu Ansteuerung eh' drei Pins. Dann aber brauchst du 
wiederum keinen extra Binärdecoder mehr, dann kann das der µC alleine. 
"Charlieplexing"...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren