Hi, ich bin auf der Suche nach einer Möglichkeit sehr viele PWM Kanäle möglichst geschickt zu steuern. Ich möchte mir eine LED-Leiste bauen, bei der jede einzelne LED in der Helligkeit steuerbar ist. Nun frage ich mich, wie mache ich sowas möglichst effektiv? Mit Schieberegistern, oder doch anders? Gibt es eigentlich Schieberegister mit mehr als 8 Ausgängen? Danke schonmal!
Man kann mehrere Schieberegister hintereinander hängen. Du musst dir nur überlegen ob der Controller dann noch schnell genug die Daten rausschieben kann um eine vernünftige PWM-Frequenz zu erzielen.
Genau. Alles hängt davon ab, wieviele LEDs Du steuern willst UND wieviele Helligkeitsstufen Du brauchst UND welche Frequenz benötigt wird. AVR@20MHz, 256 Stufen, 100Hz, macht 781 Zyklen zur Ansteuerung aller LEDs (keine Helligkeitsänderungen eingerechnet). Du wirst sicherlich pro LED 15 Takte Verarbeitung benötigen (PWM-Counter, Shift ins Register), macht 52 LEDs. Grob gerechnet. Schieberegister ist ein guter Weg. 74HC4094 hat 8 Bit und kann kaskadiert werden.
TMS 470 von TI (Arm7 TDMI) bis zu 32 PWM fähige Kanäle; + IO mit langsamere Frequenz für PWM nutzbar
> Wieviel ist denn "sehr viel" ?
So 500.. Ich glaube, da bräuchte ich schon einen extrem schnellen µC.
Oder externe PWM-Controller, die über I2C oder SPI programmiert werden können. Dann tut es ein "kleiner" Mastercontroller.
Jakob wrote: >> Wieviel ist denn "sehr viel" ? > > So 500.. Ich glaube, da bräuchte ich schon einen extrem schnellen µC. Wie viele Helligkeitsstufen benötigst du denn? Würden 32 Stufen reichen? Mit einer entsprechenden Anzahl Schieberegister in Verbindung mit nem AVR müsste es schon machbar sein. Gruß, Magnetus
Nachdem 50 LEDs (superhell) weit mehr kosten als ein Controller+Ansteuerung, wird es nicht stören, wenn einfach ne Menge Controller eingesetzt werden. Ich denke da z.B. an einen unidirektionalen SPI-Bus, an dem alle LED-Controller (10 Stück) lauschen. Ansonsten noch einen Master, der sich dann auch wieder voll auf die Helligkeitssteuerung konzentrieren kann. Schönes Projekt, täte mir auch gefallen. Das Hauptproblem ist bei 500 LEDs als Lichtleiste(n) dann sowieso die eigentliche Installation/Verdrahtung graus
Hallo interessantes Projekt, schau mal auf die HP von MAXIM unter Display Controllers http://www.maxim-ic.com/products/display/controllers.cfm vieleicht findest du etwas was passen könnte.
> Wie viele Helligkeitsstufen benötigst du denn? Würden 32 Stufen reichen?
Im Moment denke ich mal schon.. 256 wären zwar schöner, aber 32 reichen
erstmal aus.
Ich denke mal, bei solch einem Projekt werde ich sowieso mehrere
Mikrocontroller brauchen. Daher würde ich wohl am Besten einen
Mastercontroller nehmen, der die Daten weitestgehend verarbeitet und
dann mehrere Slave-Controller, die die Daten möglichst
Rechenzeit-schonend bekommen und dann durch die Schieberegister jagen.
Ich werd mir in den nächsten Tagen mal was konkreteres überlegen und
mich dann mal wieder melden.
Danke nochmal!
@ Jakob (Gast) >> Wie viele Helligkeitsstufen benötigst du denn? Würden 32 Stufen reichen? >Im Moment denke ich mal schon.. 256 wären zwar schöner, aber 32 reichen >erstmal aus. 256 sind vollkommen überflüssig. Warum? LED-Fading MfG Falk
Hey Falk, Das weisst Du doch ganz genau. Erst recht, wenn eine logarithmische Kennlinie benutzt wird, benötigst Du die 256 Stufen, um da eine Kurve reinzulegen. Klar hängt alles davon ab, wie "smooth" das Ganze aussehen soll. Schon bei 32 logarithmischen Stufen benötigt Dein Link eine PWM mit 256 Werten Auflösung.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.