mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LED Matrix ansteuern


Autor: Der mit dem Oszi tanzt (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der T6963 ist ein LCD Treiber, kein LED Treiber.

Autor: veyron (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kennst Du schon Blinkenlights?

http://oldwiki.blinkenarea.org/bin/view/Blinkenare...

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

Autor: Der mit dem Oszi tanzt (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: jasmin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nimm einfach schieberegister..........

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Guido Körber (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1x µC
1x Adressdecoder
2x ULN2803 Treiber
4x 74xx595 Schieberegister

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

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 ;)

Autor: Guido Körber (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Der mit dem Oszi tanzt (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Spess53 (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Spess53 (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Und noch der Zeilentreiber.

MfG Spess

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Joachim R. (bastelbaer)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Joachim R. (bastelbaer)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Guido Körber (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Joachim R. (bastelbaer)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.