Forum: Mikrocontroller und Digitale Elektronik TLC5940 + RGB-Matrix + Transistorarray


von Florian Z. (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend,

ich habe mir gerade folgende angehängte Schaltung ausgedacht. Meine 
Fragen nun:

1. Ist der 'Schaltplan' soweit ok (mit Abstand der 100nF und aller 
Spannungs- und Stromversorgungen) - vom Prinzip her (PNP, ...)?

2. Gibt es eine Art Transistorarray für diese 8 PNP-Transistoren.
Lt. Datenblatt 
(http://www.pieterfloris.nl/shop/download/rgb_led_matrix.pdf) ist der 
max. Strom auf 20mA pro LED (30mA Peak bei 1/10 Einschaltdauer, < 0.1 
ms). Irgendwie passt mir das nicht zusammen. Meine Berechnung: 20mA * 8 
(da 1/8 Einschaltdauer)  3 Farben  8 LEDs pro Zeile = 3,84 A das kann 
irgendwie nicht sein ... kann mir jemand sagen was ich falsch mache?

3. Gibt es eine bessere Möglichkeit (entsprechende Schieberegister) die 
den passenden Strom pro Zeile liefern können ?

Vielen Dank im Vorraus

Flo

von MagIO (Gast)


Lesenswert?

Die Transistoren müssen auf Versorgungsspannung und nicht auf Masse, 
sonst wird sich da nicht viel tun ;o)

von Florian Z. (Gast)


Lesenswert?

MagIO schrieb:
> Die Transistoren müssen auf Versorgungsspannung und nicht auf Masse,
> sonst wird sich da nicht viel tun ;o)

Da ist allerdings was dran =)

von MagIO (Gast)


Lesenswert?

Zu 2.)
An einem Transistor hängen 8 RGB LEDs, das macht 8 * 3 = 24 LEDs. Pro 
LED würd ich mal 25mA einplanen (sollte bei 1/8 duty cycle drin sein) = 
24 * 25mA = 600mA.
Das ist schon alles, da die Zeilen ja abwechselnd eingeschatet werden 
ist auch der Gesamtstrom für die Matrix 600mA max.

Zu 3.)
Was hast Du gegen Transistoren?

von Florian Z. (Gast)


Lesenswert?

MagIO schrieb:
> An einem Transistor hängen 8 RGB LEDs, das macht 8 * 3 = 24 LEDs. Pro
> LED würd ich mal 25mA einplanen (sollte bei 1/8 duty cycle drin sein) =
> 24 * 25mA = 600mA.

Sehr gut - vielen Dank - wie kommst du auf 25mA ? Ich dachte immer es 
wäre 8 mal der Strom da 1/8 der Einschaltdauer ...

MagIO schrieb:
> Das ist schon alles, da die Zeilen ja abwechselnd eingeschatet werden
> ist auch der Gesamtstrom für die Matrix 600mA max.

Gibt's PNP Transistorarrays mit > 600mA pro Transistor? Wenn ja welche?

MagIO schrieb:
> Zu 3.)
> Was hast Du gegen Transistoren?

10 dieser Module an einem ATMEGA. Ich noch keinen AVR mit 10 Ports 
gesehen ... oder?

von Florian Z. (Gast)


Angehängte Dateien:

Lesenswert?

Hier korrigiert.

von MagIO (Gast)


Lesenswert?

Hast Du doch selbst zitiert:
"30mA Peak bei 1/10 Einschaltdauer"

1/8 ist noch länger, als 1/10 ... darum sollte man den Strom noch ein 
wenig reduzieren. => 25mA
Vielleicht ist in dem Datenblatt ne Kennlinie? Ich hab nur bis zur 
Tabelle geblättert. Dann lässt sich sicherlich ein genauerer Wert 
finden.

Also nen AVR mit 10 Ports gibt es ganz bestimmt. Bei 8 * 10 wirds schon 
schwieriger ;o)

Wie sollen denn die 10 Module aneinandergereiht werden? Hat jedes Modul 
2 TLCs? Nach der bisherigen Beschreibung schon, sonst kommt das mit den 
1/8 Einschaltzeit ja nicht hin!

von Florian Z. (Gast)


Lesenswert?

MagIO schrieb:
> Also nen AVR mit 10 Ports gibt es ganz bestimmt. Bei 8 * 10 wirds schon
> schwieriger ;o)

Da muss ich widersprechen. 8 Pins sind jeweils zu einem Port 
zusammengefasst. Nachzulesen unter
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Zugriff_auf_IO-Ports

MagIO schrieb:
> Wie sollen denn die 10 Module aneinandergereiht werden? Hat jedes Modul
> 2 TLCs? Nach der bisherigen Beschreibung schon, sonst kommt das mit den
> 1/8 Einschaltzeit ja nicht hin!

Jede Modulzeile hat 24 LEDs und benötigt demnach 1 1/2 TLCs. Darum nehme 
ich jeweils 2 Module mit 3 TLCs zusammen. Damit kann ich bei 1/8 
Einschaltzeit bleiben.

von MagIO (Gast)


Lesenswert?

Ach ja ... ist ja ein 8 bit uC ... Der Port / Pin Unterschied war mir 
nicht mehr ganz präsent.

Aber trotzdem ... bei dem Aufbau mit entsprechend vielen TLCs in Reihe 
braucht man ja auch nicht für jede Zeile pro matrix einen eigenen PIN. 
Man kann die Zeilen alle zusammen einschalten und bleibt bei 8 
benötigten PINs.

    M0   M1   M2   M3
Z0  T00  T10  T20  T30 ....
Z1
Z2
Z3
...

Matrix      = M von 0 bis 9
Ausgang AVR = Z von 0 bis 7
Transistor  = T von 0x bis Ax

Man muss eben nur mal schauen, ob der Basis-Strom einer Zeile noch vom 
AVR getrieben werden kann, oder ob man da besser nochmal pro PIN einen 
Transistor spendiert.

von Florian Z. (Gast)


Lesenswert?

MagIO schrieb:
> Aber trotzdem ... bei dem Aufbau mit entsprechend vielen TLCs in Reihe
> braucht man ja auch nicht für jede Zeile pro matrix einen eigenen PIN.
> Man kann die Zeilen alle zusammen einschalten und bleibt bei 8
> benötigten PINs.

Mein Güte bin ich blöd =)

MagIO schrieb:
> Man muss eben nur mal schauen, ob der Basis-Strom einer Zeile noch vom
> AVR getrieben werden kann, oder ob man da besser nochmal pro PIN einen
> Transistor spendiert.

Naja da hattest du mir ja schon pro Zeile 600mA vorgerechnet. Ich glaube 
da muss ich schon eher einen MOSFET für 600mA * 10 Module =  >6A  nehmen 
...

von Vlad T. (vlad_tepesch)


Lesenswert?

die tlcs schalten doch gegen VCC, oder?
da müssten also NPNs rein

von MagIO (Gast)


Lesenswert?

Nö, die steuern den Strom gegen Masse. Ansonsten könnte man sie ja bei 
einer solchen Matrix nicht sinnvoll einsetzen, da die RGB LEDs da common 
anode typen sind.

von MagIO (Gast)


Lesenswert?

PS:
Warum macht man das so?

Ich würde mal sagen, weils so flexibler ist. Man kann auch mehrere LEDs 
in Reihe schalten. Die Anode der "obersten" LED legt man dann auf ~ 
n*U(led) und man kann trotzdem mit U(b) (Betriebsspannung für die 
restliche Logik) den Strom steuern.

Beispiel 3*LED blau mit 3.4V
Als Betriebsspannung für die LEDs könnte man dann z.B. 12V nehmen.
uC und TLCs laufen mit 3.3V.

von Falk B. (falk)


Lesenswert?

Scheint wohl eine Nebenwirkung des Erdbebens zu sein, die LED-Matrix 
Welle rollt mal wieder durchs Forum . . .

von Florian Z. (Gast)


Lesenswert?

Vlad Tepesch schrieb:
> die tlcs schalten doch gegen VCC, oder?
> da müssten also NPNs rein

Meiner Meinung nach sind das current sink Outputs. Demnach muss ich PNP 
verwenden.

MagIO schrieb:
> Beispiel 3*LED blau mit 3.4V
> Als Betriebsspannung für die LEDs könnte man dann z.B. 12V nehmen.
> uC und TLCs laufen mit 3.3V.

by the way: was würdet ihr für eine Spannung wählen?

http://www.pieterfloris.nl/shop/download/rgb_led_matrix.pdf

Ich hätte der Einfachheit halber mit 3,3V oder 5V je nach 
Betriebsspannung des ATMEGA gearbeitet.

Falk Brunner schrieb:
> Scheint wohl eine Nebenwirkung des Erdbebens zu sein, die LED-Matrix
> Welle rollt mal wieder durchs Forum . . .

mir fällt dazu nur das Stichwort Respektlosigkeit ein ...

von Vlad T. (vlad_tepesch)


Lesenswert?

Florian Z. schrieb:
> Meiner Meinung nach sind das current sink Outputs. Demnach muss ich PNP
> verwenden.

ja, habt recht, mein Gedächtnis ha mich getäuscht

von Florian Z. (Gast)


Lesenswert?

Vlad Tepesch schrieb:
> Florian Z. schrieb:
>> Meiner Meinung nach sind das current sink Outputs. Demnach muss ich PNP
>> verwenden.
>
> ja, habt recht, mein Gedächtnis ha mich getäuscht

Das kann jedem mal passieren =) trotzdem vielen Dank für deinen Einwand.

von Tom (Gast)


Lesenswert?

Falk Brunner schrieb:
> Scheint wohl eine Nebenwirkung des Erdbebens zu sein . . .

!!! Völlig unangebrachte Bemerkung !!!

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.