LEDs dimmen, welchen IC?

OP #2171658
Lesenswert?

Hallo!
Ich habe vor, eine 16x16 RGB-Matrix aufzubauen bei der Fülle an 
Möglichkeiten weiß ich aber nicht, welchen Baustein ich zum Dimmen 
nehmen soll (ich habe auch noch keinerlei Erfahrung mit PWM).
Bisher ist die Matrix 4x4 LEDs groß und wird einfach über 
Schieberegister von einem Atmega8 angesteuert.
http://www.mikrocontroller.net/part/PCA9634
Ist der IC gut für mich geeignet oder sollte ich lieber einen anderen 
nehmen?

Vielen Dank!

mfg Felix
OP #2172949
Lesenswert?

ich schrieb:
> der macht auch die PWM

Der hat aber ja auch nur einen PWM-Ausgng. Ich bezweifle, dass ich meine 
16x16x3-Matrix damit vernünftig ansteuern kann...

>Oder I2C/SPI Portexpander gibts auch mit PWM (z.B PCA9531 8-Bit).
>Gibt es aber gerade von TI noch wesentlich größere (24-Bit usw.).

Könnte ich also den von mir verlinkten PCA9634 benutzen?
Oder gibt es vielleicht noch einen besser geeigneten?
Wie gesagt: Eine 16x16 RGB-Matrix die ich in 256 (inklusive aus) Stufen 
dimmen will.

mfg Felix
#2172953
Lesenswert?

Felix P. schrieb:
> Könnte ich also den von mir verlinkten PCA9634 benutzen?

Das Datenblatt sagt ja.
"The PCA9634 is an I2C-bus controlled 8-bit LED driver optimized for
Red/Green/Blue/Amber (RGBA) color mixing applications. Each LED output 
has its own
8-bit resolution (256 steps) fixed frequency Individual PWM controller 
that operates at
97 kHz with a duty cycle that is adjustable from 0 % to 99.6 % to allow 
the LED to be set
to a specific brightness value."


Peter
Gast #2172965
Lesenswert?

Schaltplan wär nicht schlecht. Aber bei richtigem Konzept des 
Schaltplans kann man schon nen atmega benutzen. Du solltest dir aber im 
klaren sein, daß bei einer 16x16 Matrix (also 256 LEDs bei 256 
Helligkeitsstufen) die Zählfrequenz für eine 50Hz Bildfrequenz 
256x256x50=3,2768MHz beträgt.
Das heißt eine LED ist bei einer Helligkeit vom Wert 1 nur 1/3276800 
Sekunde an. Also 0.305 Mikrosekunden. Da muß also schon ein etwas 
Größerer Strom fließen, sonst sieht man nichts. Also um Treiber wirst du 
wohl nicht herumkommen. Und für den PWM kannst du vieleicht einfach die 
gemeinsamme Anode oder Kathode benutzen nachdem die Adressierung einer 
LED erfolgt ist.
Gast #2172979
Lesenswert?

Bei einer LED die kontinuierlich mit 20mA betrieben wird wird eine 
bestimmte helligkeit erzeugt. Wenn diese LED dann nur 1/256 der Zeit an 
ist erzeugt sie auch nur 1/256 der Helligkeit. Das heißt ich mus Sie mit 
einem 256 mal größeren Strom Ansteuern. Also 256x20mA=5,12A Gepulst. Das 
sollte einem bewußt sein. Also sollte man versuchen LEDs einer Zeile 
oder Spalte gleichzeitig zu dimmen, dann kommt man nur auf einen 
multiplikator von 16 pro LED. Aber im worst case sind alle 16 LEDs der 
Zeile oder Spalte an, womit wieder der gleiche Strom zumindest über den 
gemeinsammen Treiber fließen.
#2174252
Lesenswert?

Felix P. schrieb:
> Ich habe euch mal meinen Schaltplan angehängt

1. Jeder IC brauch noch 100nF Abblockkondensator
2. Gedanken über die Stromversorgung machen (ist bei LED Matrix nicht 
ganz ohne!)
3. Was macht T13? Zweck?
4. Was sind die anderen Transistoren für ein Typ?
5. Gerade für die Zeilentreiber (bei dir PNP) sind Bipolartransistoren 
eher unüblich - Grundsätzlich sind MOSFETs da eindeutig vorzuziehen. 
Gleiches gilt auch für dei Spalten (bei dir NPN)
6. Der 74hct163 ist mit Sicherheit kein PWM-IC
7. Der TLC5940 ist ein recht bekannt PWM-IC mit 16 Kanälen, 12 bit 
Auflösung pro Kanal, eingebaute KSQ
OP #2174270
Lesenswert?

Lehrmann Michael schrieb:
> 1. Jeder IC brauch noch 100nF Abblockkondensator
Das ist ja auch nur ein Ausschnitt, die sind natürlich schon vorhanden.

> 2. Gedanken über die Stromversorgung machen (ist bei LED Matrix nicht
> ganz ohne!)
Wollte ich machen, sobald ich PWM hingekriegt habe (mit der 4x4 
Test-Matrix auf dem Steckbrett). Wobei ich bisher nicht ganz verstanden 
hab, was so ein Treiberbausteien denn eigentlich bewirkt??? Ich mein 
letzten Endes muss doch trotzdem die gleiche Stromstärke durch die LEDs 
fließen?

> 3. Was macht T13? Zweck?
Der Dient dazu, die LEDs alle auszuschalten, während die Signale oben an 
das Schieberegister ausgegeben werden, welche LED denn nun leuchten 
soll.

> 4. Was sind die anderen Transistoren für ein Typ?
BC 546 B und BC 556 B

> 5. Gerade für die Zeilentreiber (bei dir PNP) sind Bipolartransistoren
> eher unüblich - Grundsätzlich sind MOSFETs da eindeutig vorzuziehen.
> Gleiches gilt auch für dei Spalten (bei dir NPN)
Was für MOSFETs sollte ich denn verwenden? Damit habe ich bisher noch 
keinerlei Erfahrung gemacht. Wo sind die Vorteile?

> 6. Der 74hct163 ist mit Sicherheit kein PWM-IC
Ist mir schon klar, aber mit denen kriege ich zumindest schon mal ein 
ungedimmtes Bild hin ;)

> 7. Der TLC5940 ist ein recht bekannt PWM-IC mit 16 Kanälen, 12 bit
> Auflösung pro Kanal, eingebaute KSQ
Ah ok dann werd ich wohl den holen, dankeschön :)
Wo krieg ich den denn günstig (als Privatkunde) her? Google hat mir grad 
nicht weiter geholfen... :/
Und brauch ich da noch andere Bausteine oder werden die quasi einfach 
nur anstelle der Schieberegister eingesetzt?

mfg Felix
#2176764
Lesenswert?

Felix P. schrieb:

>> 2. Gedanken über die Stromversorgung machen (ist bei LED Matrix nicht
>> ganz ohne!)
> Wollte ich machen, sobald ich PWM hingekriegt habe (mit der 4x4
> Test-Matrix auf dem Steckbrett). Wobei ich bisher nicht ganz verstanden
> hab, was so ein Treiberbausteien denn eigentlich bewirkt??? Ich mein
> letzten Endes muss doch trotzdem die gleiche Stromstärke durch die LEDs
> fließen?

Und wo kommt der Strom her?

>> 3. Was macht T13? Zweck?
> Der Dient dazu, die LEDs alle auszuschalten, während die Signale oben an
> das Schieberegister ausgegeben werden, welche LED denn nun leuchten
> soll.

Warum nimmst du dann nicht einfach Schieberegister, wie zb 595, die ihre 
Ausgänge abschalten können, bzw. im ein extra Ausgangslatch haben? Im 
zweiten Fall kannst du das Schieberegister befüllen, ohne dass sich die 
Ausgangspins ändern. Erst auf ein Signal hin, wird der Inhalt des 
Schieberegisters auf die Ausgänge durchgeschaltet und bleibt dann auch 
dort erhalten.

Aber mit TLC ist das dann sowieso hinfällig
OP #2176910
Lesenswert?

Karl Heinz Buchegger schrieb:
> Und wo kommt der Strom her?
Im Moment aus einem Labornetzgerät (0-15V, 0-1,5A)
> Warum nimmst du dann nicht einfach Schieberegister, wie zb 595, die ihre
> Ausgänge abschalten können, bzw. im ein extra Ausgangslatch haben? Im
> zweiten Fall kannst du das Schieberegister befüllen, ohne dass sich die
> Ausgangspins ändern. Erst auf ein Signal hin, wird der Inhalt des
> Schieberegisters auf die Ausgänge durchgeschaltet und bleibt dann auch
> dort erhalten.
>
> Aber mit TLC ist das dann sowieso hinfällig
Das mit dem 595 habe ich auch schon in einem anderen Thread erfahren, 
aber solange die grundlegenen Probleme nicht gelöst sind, kauf ich mir 
keine neuen ICs, wenns denn auch mit den alten funktionieren würde.
Und da die eh ausgetauscht werden müssen gegen den TLC ist die 
Diskussion auch wieder hinfällig.
#2176928
Lesenswert?

Felix P. schrieb:
> Karl Heinz Buchegger schrieb:
>> Und wo kommt der Strom her?
> Im Moment aus einem Labornetzgerät (0-15V, 0-1,5A)

Du Frage war:
Wozu brauche ich (also du) überhaupt Treiberbausteine?

Und die Antwort ist: wie soll denn sonst der Strom in die LED Strecke 
reinkommen?

Du kannst ein Betonrohr mit 2 Meter Durchmesser haben, in dem du pro 
Sekunde 8 Kubikmeter Wasser durchjagen könntest. Aber solange du an 
jedem Ende vom Rohr nur einen Küchenwasserhahn hast, wirds nichts werden 
mit den 8 m^3
Gast #2177401
Lesenswert?

> aber ich denke ihr könnt euch die 12 Spalten und zeilen mehr denken ;)
> Mag keiner mehr antworten?

Ne,
denn du solltest dir denken können,
daß LEDs nicht einfach mal so den 4-fachen Spitzenstrom verkraften,
den du ihnen bisher zumutest, gerade blaue LEDs sind da mäkelig,
und selbst die Transistoren sind überfordert und bringen keine
ausreichende Stromverstärkung, man braucht also eine andere Schaltung,
z.B. 2 Transistoren pro Zeile in Darlington-Schaltung.

Man kann also die Zeilenanzahl nicht einfach ver-4-fachen.

Es wurde auch alles gesagt:

Im Prinzip kann der die Matrix steuernde Mikrocontroller gleich die PWM 
Dimmung vornehmen, halbwegs geschickte Programmierung vorausgesetzt.

Kann man nur BASCOM, braucht man wohl Hardware-PWM, und das tut gut ein 
TLC5922.

Der PCA9634 ist eher für statische Ansteuerung.
OP #2177907
Lesenswert?

Mir ist klar, dass ich die Stromsteuerung sicher noch ändern muss. Aber 
ich würde halt gern erstmal das mit dem dimmen hinkriegen, da ich in 
meiner Testschaltung eh nicht mehr als 4x4 aufbauen wollte.
Wie kreige ich das denn hin, die PWM über den Mikrocontroller laufen zu 
lassen?

mfg 91falk
Gast #2177919
Lesenswert?

> Wie kreige ich das denn hin, die PWM über den Mikrocontroller
> laufen zu lassen?

Landläufig nennt man das Programmieren,
Praktisch lässt man die LED nicht die ganze mögliche Zeit brennen,
sondern schaltet sie vorzeitig wieder aus.
OP #2177929
Lesenswert?

Aber wie kriege ich das hin?
Gerade mit dem Schieberegister dazwischen?
Ich habe versucht, einfach mal das Signal 255mal zu wiederholen und die 
LEDs halt nur dann lecuhten zu lassen, wenn sies innerhalb dieser 
Periode sollen.
Resultat war, dass das Bild nur noch geflackert hat.
Problem ist sicher auch, dass die LEDs auch bei den 255mal zwischendurch 
ausgeschaltet werden, wenn das Signal das Register durchläuft.

mfg Felix
#2177932
Lesenswert?

Ich kann wärmstens den TLC59116 weiterempfehlen. 16-Kanal I2C Constant 
Current Driver. Damit kann man sehr einfach tolle LED Projekte 
realisieren. Ich liebe das Teil!
Ein bisschen Programmierübung muss natürlich drin sein. Aber das will 
man ohnehin früher oder später.

Ich weiß noch, wie ich mich gesträubt habe, meine erste PWM mit 
Mikrocontroller zu realisieren, weil ich dachte es sei zu schwierig und 
stattdessen einen NE555 in den Händen hatte. - Ich wurde dann zum ATmega 
gezwungen. Gott sei dank!

Hier ein paar Specs:
•  16 LED Drivers (Each Output Programmable at Off, On, Programmable LED 
Brightness, or Programmable Group Dimming/Blinking Mixed With Individual 
LED Brightness)
•  16 Constant-Current Output Channels
.
.
.

Datasheet: http://focus.ti.com/lit/ds/symlink/tlc59116.pdf
Gast #2177958
Lesenswert?

> Resultat war, dass das Bild nur noch geflackert hat.

Nun ja, langsame Programme kann jeder schreiben.

Du kannst sicher sein, daß sich über 1000 LEDs problemlos
von einem AVR zur Videodarstellung in 256 Stufen dimmen
lassen, wenn man die Assemblersprache des AVR beherrscht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren