www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LED Matrix Beschaltung


Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend.

http://raoul4.de/Aufbau.GIF

Im Bild sieht man vom Prinzip her, wie ich eine LED einer Matrix (5*8) 
ansteuere. Da die Schieberegister nicht so viel Strom, wie benötigt, 
liefern können, dienen Transistoren als Treiber.
Die beiden Leitungen kommen von 2 verschiedenen Schieberegistern. Das 
ist auf der Zeichnung nicht so ersichtlich.

Version 1:
Das ist der derzeitige Aufbau. Einfach mal 2 NPN Transistoren genommen. 
Manchen von euch mag es gleich auffallen: So kann das nicht richtig 
funktionieren. Das stimmt: Je mehr LED's in einer Spalte an sind, desto 
dunkler leuchten sie. Jedoch weiß ich nicht warum. Das wiederum liegt an 
meinen Anfängerlevel-Elektronikkentnissen.

Version 2:
Hab dann mal einen Kollgen gefragt. Der hat gesagt, ich solle einfach 
den 'oberen' NPN gegen einen PNP tauschen. Dann würds gehn. Ich müsste 
das ganze dann nur negativ ansteuern. Ich glaube damit meinte er, ein 
low-Pegel an der Base des 'oberen' würde die LED dann zum leuchten 
bringen - ein HIGH das Gegenteil.

Meine Fragen: Geht Version 2 so wie gezeichnet? Und gibt es dann keine 
Helligkeitsverluste mehr?

Schönen Aben noch,
mfg raoul

Autor: domi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Version 2 funktioniert.

Wieviele LEDs hast du in deiner Matrix?

Schau dir eventuell mal den MAX7219 oder MAX7221 an. Der lässt sich wie 
ein Schieberegister ansteuern und du kannst 64 LEDs anschließen. Du 
brauchst keine Transistoren und nur einen einzigen Widerstand. Außerdem 
macht er für 7-Segment-Anzeigen BCD-Umwandlung und du kannst 16 
Helligkeitsstufen per Software einstellen.

Für den Lerneffekt empfiehlt es sich aber das ganze einmal diskret 
aufzubauen.

Gruß,
Dominik

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ raoul

>http://raoul4.de/Aufbau.GIF

>Version 1:
>Das ist der derzeitige Aufbau. Einfach mal 2 NPN Transistoren genommen.
>Manchen von euch mag es gleich auffallen: So kann das nicht richtig
>funktionieren. Das stimmt: Je mehr LED's in einer Spalte an sind, desto
>dunkler leuchten sie. Jedoch weiß ich nicht warum. Das wiederum liegt an
>meinen Anfängerlevel-Elektronikkentnissen.

Ich nehme mal an, dass VCC=5V ist. Nun, du hast einen kleinen Fehler in 
deiner Schaltung. T1 ist ein Emitterfolger (=Kollektorschaltung), dort 
darf man keinen Basiswiderstand benutzen. Ausserdem sieht man auf dem 
Bild nicht, wo die Widerstände für die Strombegrenzung wirklich drin 
sind, dazu müsstest du einen kompletten Schaltplan der Matrix liefern.

>Meine Fragen: Geht Version 2 so wie gezeichnet?

Ja. Aber . . .

> Und gibt es dann keine Helligkeitsverluste mehr?

Das hängt vom richtigen Aufbau der Matrix ab (Plazierung der 
Widerstände). Zeichne mal und wir können es dir sagen.

MFG
Falk

Autor: raoul (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antworten.
Bei dem Bild im Anhang habe ich mal meine ganze Kreativität spielen 
lassen.

@domi:

>Wieviele LEDs hast du in deiner Matrix?

Ich habe eine 5*8 LED Matrix mit also insgesamt 40 LED's.

>Schau dir eventuell mal den MAX7219 oder MAX7221 an.

Ja der ist mir schon bekannt, aber wie du schon sagst...

>Für den Lerneffekt empfiehlt es sich aber das ganze einmal diskret
>aufzubauen.

...ist es erstmal besser, das ganze 'normal' aufzubauen. Der Preis für 
einen solchen IC spielt auch eine kleine Rolle.


@Falk

>Ich nehme mal an, dass VCC=5V

Stimmt, das hatte ich vergessen.


Ich hoffe, durch das angehängte Bild ist der Aufbau nun klar.
Kann ich nun davon ausgehen, dass es so funktionieren wird? Ich habe 
keine PNP's da.

mfg raoul

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ raoul

>Ich hoffe, durch das angehängte Bild ist der Aufbau nun klar.

Ja.

>Kann ich nun davon ausgehen, dass es so funktionieren wird? Ich habe
>keine PNP's da.

Warum hast du dann den Schaltplan mit PNPs gezeichnet?
Das mit deiner Variante 1 funktioniert, du musst nur den Basiswiderstand 
weglassen.
Also in deinem Schaltplan die Transistoren die links die Zeilen steuern 
gemäss Variante 1 einbauen (ohne Basiswiderstand).

MfG
Falk

P.S. Warum hast du es cciht gleich solide in Egale gezeichnet? Das 
dauert auch nicht länger.


Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Falk

>Warum hast du dann den Schaltplan mit PNPs gezeichnet?

Ja weil ich dachte, Version 2 wäre die richtige.

>Das mit deiner Variante 1 funktioniert, du musst nur den Basiswiderstand
>weglassen.

Brennt mir dann nicht der Transistor durch?

>P.S. Warum hast du es cciht gleich solide in Egale gezeichnet? Das
>dauert auch nicht länger.

Kommt drauf an.

mfg

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ raoul

>>Das mit deiner Variante 1 funktioniert, du musst nur den Basiswiderstand
>>weglassen.

>Brennt mir dann nicht der Transistor durch?

Würde ich es dann empfehlen? ;-)
Nein, das passt schon so. Der Strom regelt sich von allein.

MFG
Falk

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach ja, nochwas.

In deiner Schaltung musst du die ZEILEN multiplexen.
Sprich, immer eine der 8 Zeilen aktivieren, die anderen aus, dann das 
jeweilige Zeilenmuster anlegen(5 Bit).

Das ist ggf. ungünstig. Wenn du die Spalten multiplexen willst, musst du 
die Widerstände in die Zeilen einfügen. Dann hast du einen 5:1 MUX mit 8 
Bit Mustern. Das ist für die Speicherorganisation besser (5x8 Bit = 5 
Byte, während im 1. Fall 8*5Bit = 8Byte benötigt werden).

MFG
Falk

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Falk:
>In deiner Schaltung musst du die ZEILEN multiplexen.

Stimmt. In der Eile habe ich die R's für die LED's an die falschen Pins 
gemalt. Also die R's hängen eigentlich an den Zeilen.


Habe jetzt mal den Basiswiderstand bei den Transistoren für die Zeilen 
weggelassen, aber LED's sind - wenn mehrere in einer Spalte an sind - 
immernoch dunkler als normal.
Wenn ich den Basiswiderstand an den Transistoren für die Spalten von 
1,8k auf 0,9k senke, leuchtet's heller. Also irgendetwas kann doch da 
nich stimmen?
Kann mir jemand weiterhelfen?

mfg

Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
muss ich dann vielleicht die Basisvorwiderstände an den Transistoren für 
die Spalten weglassen und die an den Transistoren für die Zeilen wieder 
hinmachen?

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ raoul

>Stimmt. In der Eile habe ich die R's für die LED's an die falschen Pins
>gemalt. Also die R's hängen eigentlich an den Zeilen.


>Habe jetzt mal den Basiswiderstand bei den Transistoren für die Zeilen
>weggelassen, aber LED's sind - wenn mehrere in einer Spalte an sind -
>immernoch dunkler als normal.
>Wenn ich den Basiswiderstand an den Transistoren für die Spalten von
>1,8k auf 0,9k senke, leuchtet's heller. Also irgendetwas kann doch da

1,8K? Weisst du was für ein Strom dann fliesst?

Wir rechnen mal, auch zu später Stunde.

Die LEDS haben je nach Farbe 1,8..2,2 V Flussspannung, Blaue und Weisse 
sogar bis 3,4V. Die Transitoren für die Spalten brauchen ca. 0,5V 
Sättigungsspannung. Die Emitterfolger der Zeilen "verbrauchen" 0,7V. 
Macht zusammen ~3,4V. Bleiben 1,7V für den Widerstand. Bei 1,8k fliessen 
da gerademal 1mA!. Bei einem MUX Verhältnis von 1:5 sind das eff. 0,2mA! 
Das ist sehr wenig.

Merke: Bei einem 1:N Mux muss Nmal soviel Strom durch die LEDs fliessen 
wie bei Gleichstrombetrieb, damit sie gleich hell leuchten.

MfG
Falk

Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
d.H.? R's weglassen?

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ raoul

>d.H.? R's weglassen?

Nein. Richtig dimensionieren.

Wenn deine Matrix z.B. mit 5mA normal leuchtet, dann brauchst du bei 
gemuxten Spalten (1:5) den 5fachen Strom. Bei 1,7V (Siehe Rechnung) und 
5*5=25mA sagt der Herr George Simon Ohm was von 68 Ohm.
Aber Vorsicht! Wenn dein Programm einen Fehler hat und abstürzt und 
dabei stehen bleibt brennen deine LEDs durch. Also erst Programm 
ordentlich testen, dann kleine Widerstände einbauen.

MFG
Falk



Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

Nachtrag: Die Basiswiderstände deiner Spaltentransistoren sind zu hoch. 
Veringer die mal 470..1000 Ohm.

MFG
Falk

P.S. Ich solle mal nen Wiki-Eintrag zu dem Thema schreiben.

Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also nochmal zusammengefasst:

- 2 NPN Transistoren
- den Basiswiderstand an dem Zeilentransistor weglassen
- den Basiswiderstand an dem Spaltentrasistor besser dimensionieren 
(470..1k)

Autor: Falk Brunner (falk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ein Bild sagt mehr als tausend Worte.

MFG
Falk

Autor: raoul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für deine Hilfe Falk.

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>P.S. Ich solle mal nen Wiki-Eintrag zu dem Thema schreiben.


Das Gerüst steht schon:

http://www.mikrocontroller.net/articles/Led_matrix

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dazu gleich noch eine Frage, weil ich auch mal mit einer LED Matrix 
spielen möchte:

Im 'schlechtesten' Fall zöge eine Spalte bei mir 7 mal 150mA Pulsstrom, 
für max. 0.1ms (Kingbright LED-Matrix, Anodenversion)

D.h. es gibt einen Spitzenstrom von 1,05 A - welchen Transistor kann ich 
da nehmen? Die Ansteuerung erfolgt direkt vom AVR.
Falls jemand auch gleich eine Empfehlung für die Zeilen-Transistoren hat 
(150mA), würde mich freuen!

Autor: Dieter Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hans

Könntest Du bitte dazuschreiben ob es sich um NPN oder PNP Transistoren 
handelt und welche Bauform es sein soll?

Abgesehen davon ist eine Einschaltdauer von 0,1ms schon sehr kurz, da 
solltest Du unbedingt auf eine Pause von 1 bis 2 µs nach dem Umschalten 
achten um ein "Verschleppen" der neuen Information in die schon 
ausgeschaltete LED-Reihe zu vermeiden.
Der Effekt rührt daher, dass die Transistoren langsamer aus- als 
einschalten und daher die eigentlich schon abgeschalteten LEDs die Daten 
für die neu eingeschaltete Reihe noch kurz mit anzeigen.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Hans

>Im 'schlechtesten' Fall zöge eine Spalte bei mir 7 mal 150mA Pulsstrom,
>für max. 0.1ms (Kingbright LED-Matrix, Anodenversion)

Hmmm, die Jungs von Kingbright bauen zwar nette LED Sachen, aber die 
Datenblätter sind in eingen Punkten bisweilen an der Realität vorbei.
Ich hab mal mit den 100mm Siebensegmentanzeigen ne Anzeige gebaut, 2x4 
Stellen. Die hab ich 1:4 gemuxt, mit 80mA Pulsstrom, mit 400 Hz.

Das mit den 150mA und 100us (das sind 10 kHz!) ist nicht sonderlich 
praxisnah.

>D.h. es gibt einen Spitzenstrom von 1,05 A - welchen Transistor kann ich
>da nehmen? Die Ansteuerung erfolgt direkt vom AVR.

Empfehle einen p-Kanal Mosfet, z.B. IRF7403, billig bei Reichelt.

>Falls jemand auch gleich eine Empfehlung für die Zeilen-Transistoren hat
>(150mA), würde mich freuen!

BC337, geht fast immer.

MFG
Falk

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, hatte nicht gesehen, daß das auch im Schaltplan steht..

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.