Forum: Mikrocontroller und Digitale Elektronik LED's kurzzeitig halten


von Marcel (Gast)


Lesenswert?

Moin

Ich bin derzeit an einem Projekt, bei welchem ich eine 50x7 (10 5x7 
matrizen) LED anzeige mit einem atmega 8 ansteuern moechte.
aufgrund der begrenzten portanzahl, muss fuer die spalten multiplexing 
eingesetzt werden.
es wird also ueber einen port (oder mit einem schieberegister ... noch 
kein plan wie ich das genau mache) die spalte selektiert, und die zeilen 
direkt ueber den 2. port angelegt.
allerdings hab ich bei 50 spalten das problem, dass jede LED nur max 
1/50 der Zeit leuchtet, und somit sehr dunkel sein wird.
Wie halte ich die LED's fur ca. 50ms am leuchten, bis der naechste 
update intervall kommt? Kann ich da was mit kondensatoren basteln, oder 
muesste ich schon zu flipflops greifen?

von Klaus R. (klaus2)


Lesenswert?

Mehr Strom (siehe Datenblatt Angaben zu Puls-Pause vs. Imax), wenn du 
das Timing wirklich auf 1/50 optimiert hast.

Klaus.

von Εrnst B. (ernst)


Lesenswert?

mit 1/50 wird das wohl nie richtig hell werden, die Leds werden kaum den 
50-Fachen Strom als Impuls verkraften, und selbst wenn wird das deutlich 
dunkler (Wirkungsgrad sinkt mit steigendem Strom)

Bau die Schaltung um, mach ne Kette aus Schieberegistern für die 50 
Spalten, und einen 1:7 Multiplex.

Die Schieberegister lassen sich z.B. über den SPI-Ausgang schnell 
befüllen, und bei Schieberegistern mit Latch ('595) kann die 
vorhergehende Zeile weiterleuchten, während die nächste vorbereitet 
wird.

von Falk B. (falk)


Lesenswert?

@ Marcel (Gast)

>allerdings hab ich bei 50 spalten das problem, dass jede LED nur max
>1/50 der Zeit leuchtet, und somit sehr dunkel sein wird.

In der Tat, siehe LED-Matrix.

>Wie halte ich die LED's fur ca. 50ms am leuchten, bis der naechste
>update intervall kommt? Kann ich da was mit kondensatoren basteln, oder
>muesste ich schon zu flipflops greifen?

Du müsstest dich mal über die Grundlagen deines Vorhabens informieren. 
Siehe oben.

MFG
Falk

von Peter D. (peda)


Lesenswert?

Marcel wrote:
> Moin
>
> Ich bin derzeit an einem Projekt, bei welchem ich eine 50x7 (10 5x7
> matrizen) LED anzeige mit einem atmega 8 ansteuern moechte.

> Kann ich da was mit kondensatoren basteln, oder
> muesste ich schon zu flipflops greifen?

Kann man, sind dann eben 350 Kondis bzw. 350 FFs.

Besser also, man macht nur ein Multiplex 1:7.
Die 7 Zeilentreibertransistoren brauchst Du eh.
Die 50 Spalten kann man bei Stromspar-LEDs mit 7 * HC595 machen.


Peter

von Marcel (Gast)


Lesenswert?

Die Idee von Ernst ist wohl besser als mein erster gedanke ;)

Somit muessen nur 7 Zyklen durchlaufen werden, bis man wieder zur ersten 
Zeile kommt. Werd das dann wohl so realisieren.

Vielen dank fuer die schnellen antworten.

Und @ Falk
Ich glaube nicht, dass ich die grundlagen meines gedankens nicht 
verstanden hab, sondern nur grade nicht auf den Gedanken gekommen bin, 
eine ganze Zeile einzuschieben in ein register, und die ganze zeile zu 
aktivieren ...

Gruss Marcel

von oszi40 (Gast)


Lesenswert?

Dann wäre nur noch sicherzustellen, daß bei einen SW-Fehler die Matrix 
nicht  minutenlang auf einer LED-Zeile mit vollem Spitzenstrom hängt.

von Moi (Gast)


Lesenswert?

Wegen diesem Worst Case bin ich auch noch nicht bei meinem Projekt noch 
nicht angefangen.

von Sven L. (friemler)


Lesenswert?

Hi miteinander,

hab das ganze mal so gelöst wie im Anhang. Angesteuert werden 20 5x7 
Dot-Matrix-Displays 1:10. Funktioniert wunderbar, doch sind die 
erhältlichen DMD's nicht gerade Helligkeitswunder.

Die Schaltung auf der 1. Seite ist genau 5 mal vorhanden und 
unterscheidet sich nur in den CLK-Leitungen, welche vom DMUX kommen.

Zum Schluß auch noch ein sehr zeitiges Bild des Ergebnisses.

Sollten noch Fragen bestehen (oder Hinweise): einfach melden.

von Sven L. (friemler)


Angehängte Dateien:

Lesenswert?

Hier das PDF.

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.