Mehrere Transistoren über einen µC-Port steuern?

Gast #1158029
Lesenswert?

Hallo Leute,
ich plane gerade eine Schaltung für eine 2farb-LED-Matrix. Für jede 
Zeile existieren eine Anode, 8 Kathoden für rot und 8 Kathoden für grün. 
Die 8 Ausgänge eines LED-Treibers (MAX_D...) sollen entweder zu den 
roten Kathoden (RED_R...), zu den grünen (GRN_R...) oder zu beiden 
führen.
Auf einer englischen Seite habe ich die Schaltung im Anhang gefunden und 
das wäre natürlich für mich recht passend. Ich habe eigentlich gedacht, 
man benötigt für jede Basis einen eigenen Widerstand. Ist das in diesem 
Fall nicht nötig?
RED_ENABLED und GRN_ENABLED führen zu µC-Pins.

Falls man es so machen kann: Welche Widerstände sollte ich denn nehmen? 
Der Controller läuft mit 5V. Die Matrix-Zeilen benötigen maximal 80mA, 
wenn alle LEDs an sind.

Vielen Dank schonmal für eure Hilfe,
Chris
#1158445
Lesenswert?

Weil: 5V / 1k5 = 0,00333A
Für 8 Transistoren: 0,00333A / 8 = 0,000416A
BC557B min. Verstärkung 200
0,000416A * 200 = 83mA

Du sagst zwar du brauchst maximal 80mA, aber denk dran, dass du beim 
Multiplexen viel mehr Strom brauchst (bei 8-fach 8 mal so viel Strom, 
theoretisch).

Du solltest vielleicht mit deinem uC Pin nur einen Transistor ansteuern, 
und mit dem dann an alle Basen der jeweils 8 Transistoren (jeweils mit 
Vorwiderstand, 1k vielleicht).
Gast #1158569
Lesenswert?

Hört sich schon relativ gut an. Du musst aber aufpassen wie viel Strom 
der Port verträgt, sonnst brennt das Ding ganz schnell ab.(Spreche aus 
Eigenerfahrung). Versuche am besten den Ausgang möglichst nicht zu 
belasten.
Hab ihm Anhang mal schnell ne mögliche Schaltung angehängt.
Angehängte Dateien:
Gast #1159258
Lesenswert?

Vielen Dank für eure Antworten. Hat mir schonmal sehr geholfen!

@B-Non: Ich verwende (oder besser plane zu verwenden ;)) einen MAX7221.

@Dominik: Der BC557B hält ja bis zu 200mA aus. Ein "Pixel" der Matrix 
benötigt ~20mA. Es sollten also an jedem Transistor maximal 160mA 
gezogen werden. Das würde dann ja noch in den Grenzen des BC557B 
liegen...

@Lukas: Habe den Schaltplan jetzt nach deinem Vorschlag geändert (aber 
aus dem NPN ein PNP gemacht). Theoretisch würde jetzt bei einer 
logischen 1, also 5V auf RED_ENABLED, der Steuertransistor Q17 sperren. 
Dadurch würden die Transistoren Q1-Q8 an GND hängen und leiten (R8 kann 
ich mir eigentlich sparen...). Bei einer 0 sollte Q17 leiten und dadurch 
Q1-Q8 sperren...
Das ganze ohne Belastung des µC-Pins.
Ich bin mir nur bei den Widerständen noch nicht sicher. Meint ihr, die 
Werte kann man so nehmen?

Chris
Angehängte Dateien:
#1159485
Lesenswert?

Ups, ich merke gerade, dass im schlimmsten Fall 16 LEDs an sind. Das 
wären dann 16 * 20mA = 320mA pro Transistor. Dafür wäre der BC557B zu 
empfindlich. Was wäre denn die nächst höhere Stufe davon? Am besten 
einer der 500mA aushält...

Liebe Grüße,
Chris

PS: Ich bin "Chris (Gast)". Hab' mich nur mittlerweile angemeldet ;)
#1159748
Lesenswert?

Also für den MA7221 muss man die Segmente mit NPN Emitterfolgern 
aufbohren (BC337, 500mA) und die Digits mit PNP Emitterfolgern (BC327, 
500mA). Das wars eigentlich.

Naja, fast. Weil durch die exteren Transistoren allerdings die 
Stromregelung des MAX ausgehebelt wird muss man den Strom über 
Widerstände an den Segmenten einstellen. Den MAX kann man per grossem 
Rset mit minimaler Treiberleistung betreiben. Beachten muss man dabei, 
dass nun zwei zusätzliche Basis-Emitter Strecken Spannung benötigen. 
Also ist

R = (Vcc-2x0,7-U_LED)/I_Puls

Siehe Anhang

MfG
Falk
Angehängte Dateien:
#1159787
Lesenswert?

Aah, danke für die Transistor-Typen mit 500mA. Deine Idee würde meine 
Schaltung um 16 weitere Transistoren aufbohren, sodass ich dann bei 
insgesamt
  16 für die MAX7221-Ports
+ 16 zum aktivieren der einzelnen Zeilen
+  2 zum steuern der Zeilen-Transistoren (und entlasten der µC-Pins)
====
  34 Transistoren

Mal gucken, ob ich mir das ganze spare und einfarbig fahre ;) Im Anhang 
mal die interne Schaltung der LED-Matrix.
Gäbe es denn eine einfachere Möglichkeit zwischen den zwei Farben hin- 
und herzuschalten?
Ideal wäre ein IC, der 8 Umschalter in sich hat und der sich über eine 
Leitung steuern lässt. Gibt's sowas?

Liebe Grüße,
Chris
Angehängte Dateien:
#1159881
Lesenswert?

@  Chris K. (chrisk86)

>  16 für die MAX7221-Ports

Ja.

>+ 16 zum aktivieren der einzelnen Zeilen

Nein!

Deine Matrix hat 16 Spalten, also brauchst du nur 2x8=16 Digit-Treiber.

>Gäbe es denn eine einfachere Möglichkeit zwischen den zwei Farben hin-
>und herzuschalten?

Lass den MAX weg, nimm einen AVR + 2x TPIC6595 + 8x BC337 und fertig.
Damit kann man die LED-Matrix spielend ansteuern, ohne tricksen zu 
müssen.

MFG
Falk
Gast #1159906
Lesenswert?

Wenn du Portpins sparen möchtest, dann schau dir mal den TLC5920 an.
Zwei davon und du kannst deine zweifarbige Matrix per SPI mit wenigen (8 
reichen glaube ich) Pins mit wenigen extra Bauteilen ansteuern. Es 
reichen zusätzlich noch zwei Widerstände und 4-6 Blockkondensatoren.
Es handelt sich allerdings um einen SMS Baustein...

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