Forum: Mikrocontroller und Digitale Elektronik 7-Segment multiplexen - so realisierbar?


von Erno (Gast)


Angehängte Dateien:

Lesenswert?

Moin zusammen!

Ich bräuchte mal euren Rat.

Ich möchte 4 7-Segment-Anzeigen multiplexen. Ich habe am uC extremst 
wenig Pins zur Verfügung, daran kann ich momentan auch erstmal nichts 
ändern ;-)

Ich hatte mir daher folgendes überlegt: Ich benutze zwei 595er in Serie, 
von denen einer nacheinander die Anoden ansteuert und der andere die 
einzelnen Segmente der Anzeigen.

Ich müsste also jetzt also jedesmal ein 16-Bit-Wort reintakten, das für 
den oberen 595er das anzusteuernde Digit, sowie für den unteren 595er 
die entsprechenden Segmente beinhaltet. 4 Pins sind am SR noch frei, da 
würde ich gernen noch Status-LEDs dran machen, aber die tun erstmal 
nichts zur Sache.

Von der Funktion her sollte das ganze ja so gehen - die Frage ist eher, 
ob es so praktikabel ist. Schließlich muss ich quasi ständig reintakten 
- und zwar immer die vollen 16 Bit.

Vorher hatte ich einen 164er für die Kathoden und dann eben 
PNP-Transistoren für jedes Segment, die dann direkt an Portpins des uC. 
Das wäre ein wenig schneller, da nur 8 Bit zum Takten.

Eure Meinung? Der uC ist halt relativ viel mit dem Laden der Register 
beschäftigt...klar, warm wird ihm dabei noch lange nicht - hängt im 
Endeffekt von der Aktualisierungsrate ab.

von Falk B. (falk)


Lesenswert?

@  Erno (Gast)

>Von der Funktion her sollte das ganze ja so gehen - die Frage ist eher,
>ob es so praktikabel ist.

Sicher, ist ein alter Hut. Siehe LED-Matrix.

>Eure Meinung? Der uC ist halt relativ viel mit dem Laden der Register
>beschäftigt...

Die paar Takte sind Peanuts.

von Weingut P. (weinbauer)


Lesenswert?

oder gleich nen zweiten µC nehmen, der das Timing übernimmt und per I2C 
oder SPI nur noch die nutzdaten rüber schieben

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Erno schrieb:
> Ich habe am uC extremst wenig Pins
Das ist heftigst...

Erno schrieb:
> Schließlich muss ich quasi ständig reintakten
Sieh es eher so: du musst da mal kurz reintakten, und dann kannst du 
wieder für 5ms was anderes machen. Und das sind auf Maschinenebene 
immerhin locker 50000 Zyklen...

Fhutdhb Ufzjjuz schrieb:
> oder gleich nen zweiten µC nehmen, der das Timing übernimmt und per I2C
> oder SPI nur noch die nutzdaten rüber schieben
Und damit genau keinen Pin sparen...
Wenn die Übertraung sowieso vom SPI-Interface gemacht werden soll, dann 
kann das auch direkt die Schieberegister ansteuern.

von Ein (Gast)


Lesenswert?

Zumindest für die gem. Kathoden würde ich PNP-Treibertransistoren 
nehmen.

von Zwei (Gast)


Lesenswert?

Ein schrieb:
> Zumindest für die gem. Kathoden würde ich PNP-Treibertransistoren nehmen.

Ohne die wird's wohl gar nicht gehen.

von MaWin (Gast)


Lesenswert?

> Eure Meinung?

Ich nehme an, auch deine Anzeigen brauchen 10mA pro Segment um anständig 
zu leuchten.

Da sie aber nur 1/4 der zeit leuchten, muß man sie mit 40mA verorgen. 
Und pro Stelle fliessen 8*40mA, also 320mA.

Hast du auch nur EIN MAL in einen Datenblatt eines 74HC595 geguckt ?

von Elektrokatze (Gast)


Lesenswert?

Ein! Zwei! MaWin!!

Und wer nicht bei drei das Datenblatt gelesen hat ...

von Bit-Hund (Gast)


Lesenswert?

.. der sollte besser schon auf'm Baum sein, he he he!

von Erno (Gast)


Lesenswert?

Fhutdhb Ufzjjuz schrieb:
> oder gleich nen zweiten µC nehmen, der das Timing übernimmt und per I2C
> oder SPI nur noch die nutzdaten rüber schieben

Wenn ich noch nen zweiten nehme, dann kann ich ja gleich auch nen 
größeren nehmen :-] Aber der ist hier jetzt erstmal fix - trotzdem 
danke!

Lothar Miller schrieb:
> Das ist heftigst...

Ja, is blöd, aber is leider so.

Lothar Miller schrieb:
> Und das sind auf Maschinenebene
> immerhin locker 50000 Zyklen...

Stimmt schon.

Ein schrieb:
> Zumindest für die gem. Kathoden würde ich PNP-Treibertransistoren
> nehmen.

Du meinst die Anoden? Warum genau? Wie gesagt, ich brauche auch noch 
Zwei Status-LEDs. Ggf. kann ich dann auch noch Schaltpunkte o.ä. an die 
anderen Pins vom 595er hängen - also gebrauchen kann ich die schon.

Oder meinst du jetzt an den 595er noch PNPs? Können die die Anzeigen 
nicht treiben??

Zwei schrieb:
> Ohne die wird's wohl gar nicht gehen.

Wieso das nicht?

MaWin schrieb:
> Ich nehme an, auch deine Anzeigen brauchen 10mA pro Segment um anständig
> zu leuchten.

Ich habe mich da noch nicht so festgelegt, LC-Anzeigen mit 2mA wären 
besser. Mal schauen.

MaWin schrieb:
> Da sie aber nur 1/4 der zeit leuchten, muß man sie mit 40mA verorgen.
> Und pro Stelle fliessen 8*40mA, also 320mA.

Das ist klar, aber wie gesagt, soviel Strom wollte ich garnicht 
verbraten. Zur Not halt noch NPNs unten dran. Oder ein ULN.

MaWin schrieb:
> Hast du auch nur EIN MAL in einen Datenblatt eines 74HC595 geguckt ?

Klar hab ich das. +/- 25mA pro Kanal, 70mA insgesamt. Daher ggf. noch 
Treiber dran, je nach verwendeter Anzeige.

von Erno (Gast)


Lesenswert?

Solche Teile leuchten ja beispielsweise schon bei 1mA:

http://www.vishay.com/docs/81199/tdsr1050.pdf

Vierfach gemultiplext macht also 4mA * 8 Segmente = 32mA insgesamt - das 
wäre absolut OK.

Klar, man weiß vorher nicht, wie das ganze optisch aussieht - die 
Rechnungen sind schön und gut, die Realität meist anders.

von Bit-Hund (Gast)


Lesenswert?

Da weis einer schon alles ;-) und fragt dann noch um Rat?

von Erno (Gast)


Lesenswert?

Na Fragen kost nix und alles wissen tut auch niemand. Ich weiß z.B. grad 
nicht, was die 595er für einen internen Widerstand haben, bzw. vermisse 
ich einen Graph über den stromabhängigen internen Widerstand / 
Spannungsabfall.

Weiß da einer mehr als ich?

von Weingut P. (weinbauer)


Lesenswert?

die Verwendung eines zweien µC hätte halt den Charme, dass der HauptµC 
sich nicht ums Timing kümmen muss, es wäre ja auch eine 
Simplexverbindung per TX denkbar, dann wärs nur noch 1 Pin für die 
Datenschieberei.

Aber gut, muss ja nicht

von Erno (Gast)


Angehängte Dateien:

Lesenswert?

Fhutdhb Ufzjjuz schrieb:
> die Verwendung eines zweien µC hätte halt den Charme, dass der HauptµC
> sich nicht ums Timing kümmen muss

Das stimmt natürlich. Wäre auch gut.

Aber noch was anderes: Ich würde gerne eine Duo-LED verwenden, um 
Schaltpunkte anzuzeigen. Diese finde ich allen erdenklichen Varianten, 
aber gibt es auch die in meinem Bild rechts gezeigte Variante?

Dann könnte ich mit einem Pin die beiden Zustände bewerkstelligen...

von TS (Gast)


Lesenswert?

...wenn dann würde ich die "Gemeinsamen" der 7-Segmentanz. wenigstens am 
595 halbe halbe aufteilen, dann klappts mit den Strömen etwas besser. 
Also alle 8 registerpins nutzen...

TS

von Karl (Gast)


Lesenswert?

Bevor ich mich um einen 2. µC kümmere, würde ich eher einen MAX7219 
nehmen. Aus China für etwa 30 Cent / Stück zu beziehen.

von TS (Gast)


Lesenswert?

nicht dass ich wüsste, aber es gibt welche mit komplett getrennt 
herausgeführten Pins...
Hängt aber auch sehr sehr stark vom Formfaktor ab...

Aber wenn du eh schon eine Matrix anlegst, dann belommt man die da auch 
noch mit reingefrimelt... dann braucht es garkeinen pin ....

TS

von Erno (Gast)


Lesenswert?

Karl schrieb:
> Aus China für etwa 30 Cent / Stück zu beziehen.

Ja, aber mit solchen Bausteinen bin ich schonmal auf die Schnauze 
gefallen. Ich mein, die kosten hier ~€10 oder so (wenn ich mich grad 
nicht ganz vertue)...ein Imitat für 30Cent...:\

von Karl (Gast)


Lesenswert?

Ich würde das nicht schreiben, wenn ich es nicht selbst ausprobiert 
hätte. Bei Reichelt kosten die übrigens etwa 5 Euro / Stück.

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.