Forum: Mikrocontroller und Digitale Elektronik LED Matrix ansteuern


von Der mit dem Oszi tanzt (Gast)


Lesenswert?

Hallo,

ich habe vor mir eine 32x16 LED-Matrix an die Wand zu hängen.
Für die Ansteuerung der Matrix habe ich mir den T6963 näher angeschaut. 
Wenn ich da jedoch die 32x16 LEDs dran hängen möchte habe ich so meine 
bedenken das diese nicht mehr hell genug sind. Selbst wenn ich den 
4-fachen Strom drüberfliesen lasse sind sie nach meinen berechnungen 
immer noch nur 1/4 so hell wie ohne multiplexen.

Den T6963 habe ich deshalb gewählt weil für diesen schon Treiber für 
Linux existieren und ich die LEDs so mit Programmen wie lcd4linux oä. 
ansteuern kann.

Hat hier schon jemand ein ähnliches Projekt realisiert oder kann mir 
Tipps geben wie ich das zu-wenig-Strom Problem beim Multiplexen lösen 
kann?
Eventuell kann mir auch jemand einen anderen IC nennen der ebenfalls mit 
dem oben genannten Programm funktionerit.

Gruß

von Karl H. (kbuchegg)


Lesenswert?

Der mit dem Oszi tanzt wrote:

> immer noch nur 1/4 so hell wie ohne multiplexen.

Na ja. 1/4 Strom heist nicht unbedingt dass die LED nur 1/4
so hell ist. Da gibt es einen logarithmischen Zusammenhang.
Probiers einfach mal mit einer Testled aus, ob sie noch
hell genug ist.

von holger (Gast)


Lesenswert?

Der T6963 ist ein LCD Treiber, kein LED Treiber.

von veyron (Gast)


Lesenswert?

Hallo,

kennst Du schon Blinkenlights?

http://oldwiki.blinkenarea.org/bin/view/Blinkenarea/BlinkenLEDs

http://s23.org/wiki/Category:Blinkenlights
http://s23.org/wiki/BlinkenLEDsPro_1.1

Sind zwar 'nur' 18 x 8 leds, aber:

  "144 pixels ought to be enough for anybody"

Vielleicht ist das ja was für Dich.

Gruß
veyron

von Der mit dem Oszi tanzt (Gast)


Lesenswert?

Das das ein LCD Treiber ist weiß ich schon, wenn ich mir aber das 
Datenblatt anschaue kann man da wohl auch eine LED Matrix hin hängen.

Das Blinkenlightsding kenne ich, leider funktioniert das nicht mit der 
Software die ich vorhabe zu verwenden.

Gruß

von jasmin (Gast)


Lesenswert?

nimm einfach schieberegister..........

von Magnus Müller (Gast)


Lesenswert?

Auf die Idee, einen T6963 für die Ansteuerung einer LED-Matrix zu 
verwenden, kam ich vor einigen Wochen auch schon. Hatte aber dann nicht 
den Nerv, das (aus meiner Sicht) konfuse Datenblatt zu studieren um 
herauszubekommen, ob man mit Hilfe von nachgeschalteten Schieberegistern 
die LEDs treiben könnte.

Gruß,
Magnetus

von Bastler (Gast)


Lesenswert?

Die Idee mit 32x16 hatte ich auch.
Ich habe erstmal ne kleine Version zum testen mit 16x8 aufgebaut.

Bei der 32x16 Variante habe ich vor zwei Ansteuerungen mit 32x8 
drauszumnachen, dadurch halbiere ich die Pausenzeit meiner 
Multiplexerei.

von Guido Körber (Gast)


Lesenswert?

Ohne jetzt das Datenblatt durchgegraben zu haben: Einen LCD Controller 
für eine LED Matrix zu verwenden ist güstigstensfalls sinnlos. Die 
Treiberausgänge an diesen Chips haben nichts damit zu tun was man für 
LEDs bräuchte. LCDs werden mit wechselnden Spannungspegeln und 
-polaritäten  angesteuert um zu verhindern, dass die Flüssigkristalle 
galvanisch zersetzt werden. LEDs bracuhen dagegen einen Konstantstrom.

Die nachgeschaltete Treiberelektronik dürfte etwa so aufwändig werden 
als wenn man gleich eine Bank Schieberegister nimmt und den Kram selber 
ansteuert.

von Bastler (Gast)


Lesenswert?

1x µC
1x Adressdecoder
2x ULN2803 Treiber
4x 74xx595 Schieberegister

Also 8 Käferchen, gegebenfalls noch ein EEPROM zum Bilder hinterlegen 
und wechseln...

von Magnus Müller (Gast)


Lesenswert?

> Die nachgeschaltete Treiberelektronik dürfte etwa so aufwändig werden
> als wenn man gleich eine Bank Schieberegister nimmt und den Kram selber
> ansteuert.

Davon gehe ich ja auch aus. Aber man hätte dann halt endlich mal ein 
100% T6963-kompatibles LED-Matrixdisplay ;)

von Guido Körber (Gast)


Lesenswert?

Na ja, ob es wirklich so geil ist ein LED Display zu haben was mit einem 
dieser ziemlich kranken LCD Controller kompatibel ist...

Die Dinger sind fürchterlich zusammengeschustert und stammen von ihren 
Wurzeln auf den 1970ern.

von Der mit dem Oszi tanzt (Gast)


Lesenswert?

Guido Körber:
du darfst mir gerne einen anderen Controller empfehlen der eine variable 
Auflösung zulässt. Ich habe zumindest nicht wirklich eine Alternative 
gefunden.
Ach ja - da hie schon einige das wohl überlesen haben - der Controller 
MUSS mit lcd4linux oä. Software ansteuerbar sein.

Der T6963 treibt ein LCD nicht direkt. Dazu benötigt er noch 2 weitere 
Controller. Mein Vorhaben besteht darin diese Signale abzufangen und in 
meine LED Matrix einzuspeißen. Ob das auch funktioniert muss ich noch 
ein mal näher durchlesen - das Datenblatt ist ja nicht gerade das beste 
das ich gelesen habe.

von Spess53 (Gast)


Angehängte Dateien:

Lesenswert?

Hi

>Dazu benötigt er noch 2 weitere Controller

Genau da liegt der Hase im Pfeffer. Ich habe mal das Datenblatt des 
Spaltentreibers angehängt. Damit die richtigen Pixel leuchten muss der 
nachempfunden werden.
Möglicherweise wäre es einfacher einen geeigneten AVR so zu 
programmieren, daß er sich wie ein T6963 verhält. Dann hätte man die 
Möglichkeit die Ansteuerung der LED-Matrix frei zu wählen.

MfG Spess

von Spess53 (Gast)


Angehängte Dateien:

Lesenswert?

Hi

Und noch der Zeilentreiber.

MfG Spess

von holger (Gast)


Lesenswert?


von Joachim R. (bastelbaer)


Lesenswert?

Hi,
zur Info:
Die LED-Matrix unter 
"http://ssl.bulix.org/projects/lcd4linux/wiki/LEDMatrix"; für lcd4linux 
setzt auf SLM1608 Displays auf. Die sind aber so gut wie nicht mehr zu 
bekommen.

Wenn du die LEDs per Schieberegister ohne Multiplexer ansteuerst, 
brauchst du ein entsprechendes Netzteil. Bei 32*16 LEDs sind das 512 
LEDs x 20mA was schon mal 10,24A fürs Netzteil macht.

Also bleibt nur Multiplexen. So gibts von Maxim den MAX7221 der schon 
mal per SPI eine 8x8-Matrix im Multiplexbetrieb ansteuern kann. Und der 
lässt sich kaskadieren. Damit entlastest du den Proz, der sich dann um 
die Fonts und so kümmern kann.

Unter lcd4linux wird der t6963 übrigens ausschliesslich im Textmode 
angesteuert. Wenn dein Display 32x16 Pixel hat, sind das bei einem 
5x7-Font gerade mal 5 Zeichen (5 Pixel Zeichen + 1 Pixel Space) und 2 
Zeilen. Das macht ja wohl nicht wirklich Sinn, da krieg man ja fast nix 
dargestellt.

Schau dir mal "http://www.linuxjournal.com/article/2823"; an. Das macht 
dann mehr Sinn, da dort ein fertiges Display direkt an den PC geklemmt 
wird und man ggf. lcd4linux nicht braucht bzw. man ein einfaches Modul 
selbst schreiben kann.

Und die Ansteurerung von lcd4linux aus ist ja deine Sache. Am 
einfachsten wäre es, wenn du dann doch was selber bauen möchtest, du 
schliesst deine Schaltung via serielle an und simulierst z.B. ein 
Matrix-Orbital-Display.

mfg.
    Joachim

von Falk B. (falk)


Lesenswert?

@ Joachim R. (bastelbaer)

>Wenn du die LEDs per Schieberegister ohne Multiplexer ansteuerst,
>brauchst du ein entsprechendes Netzteil. Bei 32*16 LEDs sind das 512
>LEDs x 20mA was schon mal 10,24A fürs Netzteil macht.

>Also bleibt nur Multiplexen.

MULTIPLEXEN SPART KEINEN STROM! ES SPART NUR LEITUNGEN UND TRANSISTOREN.

MfG
Falk

von Joachim R. (bastelbaer)


Lesenswert?

@falk

Wie kommst du denn darauf?
Denken wir mal darüber nach. Bei einer gemultiplexten Anzeige, nehmen 
wir mal eine 8x8 Matrix, sind es insgesamt 64 LEDs. Bei einer Matrix 
adressiert man im Normalfall eine Spalte nach der anderen und schaltet 
auf die Zeilen die Daten. Das ganze dann mit einer 
"Bildwiederholfrequenz" von >20 Bilder/sec oder etwa 160Hz (8 Spalten 
mal 20Hz) für die Matrix. Beim MAX7221 sind es z.B. 500-1300Hz für die 
komplette Matrix. Es wäre sonst auch nicht möglich ein Zeichen 
darzustellen. Es sind also immer nur maximal 8 LEDs eingeschaltet was 
bei acht LEDs ca.160mA sind.
Da man multiplext kann/muss man allerdings den Stron erhöhen um die 
Helligkeit hinzubekommen. Nehmen wir mal den doppelten Strom an sind das 
dann  ca.320mA für die 8 LEDs. Dies ist aber immer noch weniger als die 
1,28A die ich brauche wenn ich die LEDs einzeln ansteuere.
Und es werden immer nur 8 Stück gleichzeitig angesteuert.

Wenn ich falsch liegen sollte, erklär mir wie anders sein soll.

mfg.
    Joachim

von Guido Körber (Gast)


Lesenswert?

@Der mit dem Oszi tanzt: Ich kenne keinen passenden Controller, ich sage 
nur, dass es ein extremer Aufwand ist einen LCD Controller für eine LED 
Matrix zu verwenden, so viel Aufwand, dass es sinnlos wird. Einfacher 
wäre es die Software anzupassen um eine andere Lösung anzusteuern.

von Falk B. (falk)


Lesenswert?

@ Joachim R. (bastelbaer)

>>MULTIPLEXEN SPART KEINEN STROM! ES SPART NUR LEITUNGEN UND TRANSISTOREN.

>Wie kommst du denn darauf?

Weil ich den Artikel LED-Matrix geschrieben habe?
Und ein wenig Ahnung vom Fach habe? ;-)

>darzustellen. Es sind also immer nur maximal 8 LEDs eingeschaltet was
>bei acht LEDs ca.160mA sind.

Das sind 20mA/LED. Da aber 8:1 gemuxt wird, sind das EFFEKTIV nur 20/8= 
2,5mA pro LED.

http://de.wikipedia.org/wiki/Effektivwert

>Da man multiplext kann/muss man allerdings den Stron erhöhen um die
>Helligkeit hinzubekommen.

EBEN!

> Nehmen wir mal den doppelten Strom an sind das
>dann  ca.320mA für die 8 LEDs. Dies ist aber immer noch weniger als die
>1,28A die ich brauche wenn ich die LEDs einzeln ansteuere.

Ja, weil deine LEDs nur 5mA effektiv bekommen, und demzufolge nur 1/4 
der physikalischen Helligkeit haben, wie wenn sie mit 20mA betrieben 
werden.

>Und es werden immer nur 8 Stück gleichzeitig angesteuert.

Für jeweils 1/8 der Zeit. Energie ist Leistung mal Zeit.

>Wenn ich falsch liegen sollte, erklär mir wie anders sein soll.

Siehe oben.

MFG
Falk

von Joachim R. (bastelbaer)


Lesenswert?

@falk

OK, hab den Artikel gelesen und verstehe jetzt was du meintest und 
stimme dir soweit zu. Ich habe bisher den Strom bei meinen Matrizen nie 
auf einen so hohen Wert hoch gefahren, mir reichte das immer so. Daher 
der von mir erwähnte "Energiespareffekt".
Aber wenn ich LEDs so hoch quälen kann, dann muss ich mal sehen wie ich 
beim MAX7221 mehr Power bekomme :-).

Danke für die Info
      Joachim

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.