Forum: Mikrocontroller und Digitale Elektronik Geplantes Projekt: LED-Display, ein paar Fragen


von Kai S. (hugstuart)


Lesenswert?

Hallo,
ich habe vor, mir ein Display aus LEDs zu bauen (als Partybeleuchtung). 
Die Idee ist, 180 LED zu nehmen und diese mit Schieberegistern 
anzusteuern. Dazu habe ich ein paar Fragen. Da ein Schieberegister acht 
Ausgänge hat, bräuchte ich davon 23, welche ich kaskadieren würde (wie 
im Schieberegister-Tutorial beschrieben). Das würde bedeuten, dass der 
uC 23 mal per SPI Daten ausgeben würde, bevor alle Register beschrieben 
sind. Das Ganze würde ja eine Sache von wenigen Mikrosekunde sein, also 
sollten auch Animationen der LEDs mit z.B. 30 Wechseln pro Sekunde 
möglich sein? Desweiteren frage ich mich, welche Schieberegister ich 
nehme. Die im Tutorial können zwar 8 LEDs schalten wenn man je 4 mit GND 
und 4 mit VCC schaltet, aber es gibt doch sicherlich auch welche, wo ich 
der Einfachheit halber alle LEDs mit VCC bzw. Masse schalten kann, hat 
da jemand nen Tipp? Ich habe leider keine Übersicht über verfügbare 
Schieberegister.

Vielen Dank im Voraus
Kai

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Bist du wirklich sicher, dass du jede einzelne LED über einen Ausgang 
eines Schieberegisters ansteuern willst?

Üblicherweise macht man so etwas in einer LED-Matrix (die trotzdem 
beliebig angeordnet sein kann) mit dem Multiplexverfahren. Typ. 
Beispiele sind sog. LED-Cubes oder das Pong von B. 
Kainka/ELO/CONRAD/FRANZIS (120 LED, Atmega8) oder z.B. das Peggy von 
Evilmadscientist (25x25=625 LEDs mit ATmega164P 
http://www.evilmadscientist.com/article.php/peggy). Bei 180 LED käme man 
so auf max. vier 8-Bit Schieberegister.

von Karl H. (kbuchegg)


Lesenswert?

Stefan B. schrieb:

> Üblicherweise macht man so etwas in einer LED-Matrix (die trotzdem
> beliebig angeordnet sein kann) mit dem Multiplexverfahren.

Schon klar.
Allerdings sei auch nicht verschwiegen, dass man dann einen nicht 
unerheblichen Verkabelungsaufwand hat.

Wenn die LED weitgehend in Matrixform physisch angeordnet werden sollen, 
ist das kein Thema.

Wenn die LED aber in einem Strang angeordnet werden, dann ist ein 
Schieberegisterbus verdrahtungstechnisch um einiges weniger Aufwand.
Wobei man bei derartig vielen SR hintereinander das Taktsignal 
zwischendurch eventuell wieder aufbereiten muss bzw. die Taktrate 
absenken muss.

von MaWin (Gast)


Lesenswert?

Statt 74HC595 könntest du Konstantstromtreiber wie TB62705
nehmen, das spart die Vorwiderstände.
TLC5940 bzw PCA9532 dimmen gar von alleine.
Natürlich ist das eine Preisfrage.
Ausserdem hast du NATÜRLICH nicht gesacht, welchen Strom
deine LEDs brauchen, vielleicht brauchst du einen PIC6B595.

Die von Stefan vorgeschlagenen Multiplexanzeigen sparen keinen Strom, 
bewirken aber ein Flimmern und werden leider oft falsch berechnet, daher 
ist deine Schieberegisterlösung schon in Ordnung.

von Kai S. (hugstuart)


Lesenswert?

Hi, erstmal Danke für die Antworten. Das mit der Taktaufbereitung 
verstehe ich nicht ganz. Das Taktsignal soll vom Mikrocontroller aus auf 
alle Schieberegister gehen. Konkret bedeutet dies, dass Der SPI-Taktpin 
mit dem Taktpin jedes Schieberegisters verbunden ist. Wo muss ich da 
einen Takt aufbereiten?

von kenner (Gast)


Lesenswert?

ich habe ein led display mit 3.840 leds gebaut.
Das ganze wurde in 30 einzelmatritzen gesplittet und als matrix 
angesteuert: 16 zeilen x 8 spalten. Das hat super funktioniert. Du 
könntest auch mit der zeilen anzahl hinauffahren, ich war damals nur 
eigeschränkt weil alle restlichen i/o pins schon belegt waren. Aber zb 
20 x 8 matrix ist durchaus machbar. Mit den spalten würde ich allerdings 
nicht hinauffahren, weil die helligkeit (gemultiplext) darunter leidet. 
Also nur wenn du wirklich gute leds hast. Damals das display war für 
outdoor, also musste die helligkeit groß sein. Vielleicht genügt für 
dich auch eine geringere.

Kurz gesagt: würds wieder als matrix aufbauen.

Cheers

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.