Forum: FPGA, VHDL & Co. LED Matrix CPLD Anwendung?


von Hellboy (Gast)


Lesenswert?

Hallo

ich möchte mir gerne eine led matrix mit 30 x 30 LED´s bauen .. das 
macht 900 led´s...

ich möchte diese in zeilen und spalten anordnen und auch entsprechend 
ansteuern nun hatte ich überlegt im prinzip müste man das doch wunderbar 
mit nem cpld und nem atmega 128 machen können ... ich habe überlegt im 
prinzip müste man doch der cpld einen ram zur seite bekommen (weil ich 
gelesen hatte das ich nicht genügend flip flops zur speicherung von den 
900 led´s haben werde... der cpld ließt einzeln die zustände aus dem ram 
.... und baut das bild dann pixel für pixel auf .... (aus dem ram)... 
der atmega soll das bild im ram dann ändern können ...

nun meine frage ....

habe ich auf die art und weise eine chance das bild ohne flackern 
aufzubauen?

habe ich irgendwas nicht berücksichtigt ?

gibt es schönere lösungen ?



Mit freundlichen Grüßen

Martin

von Falk (Gast)


Lesenswert?

@ Hellboy (Gast)

>ich möchte mir gerne eine led matrix mit 30 x 30 LED´s bauen .. das
>macht 900 led´s...

Willkommen in der wunderbaren Welt der LED-Matrix.

>mit nem cpld und nem atmega 128 machen können ... ich habe überlegt im

Für die binäre Ansteuerung (ein/aus) tuts ein MEGA128 locker. Wenns 
allerdings mit Helligkeitstufen sein soll braucht man viele schnelle, 
synchrone PWMs. Das ist das Stichwort für den CPLD.

>prinzip müste man doch der cpld einen ram zur seite bekommen (weil ich
>gelesen hatte das ich nicht genügend flip flops zur speicherung von den
>900 led´s haben werde... der cpld ließt einzeln die zustände aus dem ram

Ja, das ist korrekt. Ich würde aber lieber einen MEGA + CPLD nehmen. Der 
MEGA macht "das Grobe" + Speicherung im RAM, der CPLD sie PWM.

>.... und baut das bild dann pixel für pixel auf .... (aus dem ram)...
>der atmega soll das bild im ram dann ändern können ...

>habe ich auf die art und weise eine chance das bild ohne flackern
>aufzubauen?

Ja, so machen es alle, auch die Profis.

>habe ich irgendwas nicht berücksichtigt ?

Das grobe Konzept stimmt erstmal.

>gibt es schönere lösungen ?

Aquarellmalerei ;-)

MFG
Falk

von Benedikt K. (benedikt)


Lesenswert?

Falk wrote:
> Für die binäre Ansteuerung (ein/aus) tuts ein MEGA128 locker. Wenns
> allerdings mit Helligkeitstufen sein soll braucht man viele schnelle,
> synchrone PWMs. Das ist das Stichwort für den CPLD.

Wobei PWM schon einen recht großen CPLD erfordert, vor allem wenn es 30 
Kanäle parallel sind. Ein FPGA wäre vermutlich besser.

> Ja, so machen es alle, auch die Profis.

Die nehmen meist kleinere Module (8x8 oder 16x16 maximal).

>>habe ich irgendwas nicht berücksichtigt ?

Ja, den Strom: Um jede LED mit den vollen 20mA anzusteuern, wäre bei 
1/30 Mux ein Spitzenstrom von 0,6A erforderlich. Das machen die meisten 
LEDs nicht mehr mit. Mehr als 1/16 würde ich auf keinen Fall verwenden.

Ich habe sowas schon öfters aufgebaut (bis 80x16, 16 Helligkeitsstufen, 
oder aber auch 128 LEDs mit 256 Helligkeitsstufen). Als Controller 
diente jedesmal ein mega8. Der reicht für sowas bei weitem aus. Wenn ich 
das ganze aufbauen wollte, würde ich die LEDs als 8 Zeilen und 16-64 
Spalten (je nach Anzahl der gewünschten Helligkeitsstufen) anordnen. Von 
diesen einzelnen Modulen dann mehrere Zusammen. So bauen die Profis auch 
riesige Displays, die alle aus solchen Minimodulen bestehen.

von Falk (Gast)


Lesenswert?

@ Benedikt K. (benedikt)

>Wobei PWM schon einen recht großen CPLD erfordert, vor allem wenn es 30
>Kanäle parallel sind. Ein FPGA wäre vermutlich besser.

Wer sagt denn, das 30 PWM-Kanäle benötigt werden?
Und wenn man dem Link zum Tutorial folgt . . .

>LEDs nicht mehr mit. Mehr als 1/16 würde ich auf keinen Fall verwenden.

EBEN!

MFG
Falk

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.