Forum: Mikrocontroller und Digitale Elektronik Mehrere Transistoren über einen µC-Port steuern?


von Chris (Gast)


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

von Chris (Gast)


Angehängte Dateien:

Lesenswert?

Sorry, Anhang vergessen^^

von B-Non (Gast)


Lesenswert?

Das würde mich auch interessieren. Habe etwas ähnliches vor...
Welchen Treiber verwendest du?

von Der F. (flins)


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).

von Lukas Reihs (Gast)


Angehängte Dateien:

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.

von Chris (Gast)


Angehängte Dateien:

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

von Chris K. (chrisk86)


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 ;)

von Lukas Reihs (Gast)


Lesenswert?

Ne Idee wäre nen MOSFET zu verwenden kuck dir mal den BUZ11 an der hält 
das (eventuell mit Kühlung) sicher aus.

von uP-Schwitzer (Gast)


Lesenswert?

R6 / R9 haben 3,3 Ohm?

von Chris K. (chrisk86)


Lesenswert?

@Lukas: Ich hab' noch nie mit MOSFETs gearbeitet. Dazu muss ich mich 
erstmal schlaulesen, wie die genau wirken/funktionieren...

@uP-Schwitzer: Ja, das sind 3,3 Ohm. Hab' die Werte vom Lukas' Schaltung 
übernommen, die er weiter oben gepostet hat...

Chris

von Falk B. (falk)


Angehängte Dateien:

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

von Chris K. (chrisk86)


Angehängte Dateien:

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

von Falk B. (falk)


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

von tipp (Gast)


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...

von tipp (Gast)


Lesenswert?

SMD-Baustein natürlich...

von Lukas Reihs (Gast)


Lesenswert?

sry hab mich bei meiner schaltung oben vertan dass sind 3.3k und 3.3Ohm 
sry

von Chris K. (chrisk86)


Lesenswert?

Hmm, danke für den Tipp. Der TLC5920 scheint ja ein passender Chip zu 
sein. Jetzt muss ich nur noch herausfinden, wo ich ihn erwerben kann. 
Schade dass der SMD ist. Mal schauen, ob ich jemanden finde, der das 
löten kann...

Naja, hatte eigentlich extra 5 MAX7221 erstanden, die dann jetzt wohl 
erstmal sinnlos sind... =)

Liebe Grüße,
Chris

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.