Geplantes Projekt: LED-Display, ein paar Fragen

OP #1997197
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
Persönliche Seite
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.
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.
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.
OP
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?
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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.