mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 8x8 Dot Matrix Display Ansteuerungsdisplay


Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe folgendes Problem:

Ich steuere direkt über den PortD eines ATMega8 die Zeilen eines 8x8
Dot Matrix Displays an (siehe Bild1.jpg).
Die Spalten werden von einem 74164 Schieberegister angesteuert. Wobei
ich einfach eine 1 durch das Schieberegister durchlaufen lasse.
Das funktioniert auch wunderbar, allerdings sind viele LEDs einfach zu
dunkel.

Jetzt hab ich probehalber einfach einen BC547B nach dem Schieberegister
und vor dem Display (Spalten) zwischen zu schalten (siehe Bild2.jpg).
Doch dann funktioniert so gut wie garnichts mehr.
Wenn zum Beispiel ein Zeichen angezeigt werden soll wo die ganze 2.
Spalte leuchten soll, dann wird überhaupt nichts angezeigt.

Was mache ich falsch? :(


Vielen Dank im Voraus,
Thomas

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmm. kann ich hier nicht mehrere dateien anhängen?

Autor: Thomas K (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Bild1

Autor: Thomas K (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Bild2

Autor: Thomas K (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
8x8 Dot Matrix Display

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast wohl noch nie eine Diodenkennlinie gesehen.

Dioden (auch LEDs) haben eine sehr steile Kennlinie, deshalb ist immer
ein Vorwiderstand zur Stromeinstellung notwendig !


Peter

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja, was heißt das jetzt genau?

Das zuviel Strom fließt? Wie kann das sein?
Bei dem einen Zeichen das angezeigt wird (mit Transistor), leuchtet die
"verstärkte" Spalte sehr gut (auch alle anderen Teile vom A).
Nur die anderen Zeichen gehen eben nicht.

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das heißt genau, dass die LEDs viel mehr Strom ziehen, als sie dürfen
(dadurch leuchten sie kurzzeitig schön hell, um dann recht schnell nur
noch auf trübe Funzel zu machen, bevor sie gänzlich abrauchen) und
damit die Ansteuerung vermutlich überlasten (habe keine Lust, mir das
Datenblatt dazu anzusehen). Und ein Chip, der weit außerhalb der
Spezifikation betrieben wird, macht was er will oder bettet sich zur
ewigen Ruhe...

Gruß, Frank

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
es ist ja NICHTS kaputt.
ohne transistor dazwischen geht ja alles wieder.

im datenblatt steht sowieso nicht viel. nur die anschlüsse

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann mir bitte jemand erklären wo das Problem wirklich liegt?

Ich meine die LEDs sind sicher nicht kaputt.
Hab jetzt vor den Transistoren, nach den Transistoren und nach dem
Display Richtung Mikrocontroller Widerstände eingebaut. Es funktioniert
aber immer noch nicht! :((

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Ich meine die LEDs sind sicher nicht kaputt.

Und ich meine, Du solltest sie besser mal testen.


>> Hab jetzt vor den Transistoren, nach den Transistoren und nach dem
Display Richtung Mikrocontroller Widerstände eingebaut.

Mit welchen Werten?


>> Nur die anderen Zeichen gehen eben nicht.

Soll das heißen, Du kannst ein großes "A" vollständig und mit
gleicher Helligkeit der beteiligten LED-Punkte darstellen, aber "B",
"C" usw. nicht?

Deine Programmierkünste sind aber über jeden Zweifel erhaben, ja? Der
Fehler muß also in der Hardware liegen?

Gruß, Frank

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, also nochmal:

Wenn du dir meinen Schaltplan ansiehst (bild1.jpg) dann siehst du die
Variante bei der alle "Zeichen" funktionieren. Alle LEDs leuchten,
allerdings nicht hell genug bzw. verschieden hell. Das heißt für mich
mal, dass es kein Softwareproblem ist.

Das große "A" funktioniert bei Anwendung mindestens eines
Transistors, allerdings nur hell genug (bzw. heller) in der Spalte die
der Transistor versorgt.
Dann funktionieren aber die anderen "Zeichen" nicht, wie bereits
erwähnt.

Widerstände: ich habe 220 Ohm Widerstände verbaut. Die Transistoren
schalten auf jedenfall durch (habs auch mit stärkeren Widerständen
versucht - der Transistor wird so oder so nicht warm).
Durch einen Widerstand vor und nach dem Display sind die jeweiligen
(verstärkten) LEDs des Display allerdings wieder auf dem gleichen
Niveau wie ohne Transistor. :(

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

Bewertung
0 lesenswert
nicht lesenswert
Hi,

anbei mal eine HiPowerschaltung fuer eine 5x5 Led Matrix laesst sich
einfach auf 8x8 ausbauen. Die Led`s duerfen ein IF Strom von bis zu 30
mA haben....


@Thomas K

wenn du es noch einfacher machen willst kauf dir ein Max7219. Der ist
speziell fuer deine Sachen entwickelt wurden. Kostet leider auch nen
paar Euronen, ansonsten einfach kostenloses Sample bei MAxim
anfordern.

Mfg

Dirk

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in der Schematic fehlen noch die Basisvorwiderstaende oder man nimmt ein
Darlington Transistor mit eingebauten Vorwiderstand.


Mfg

Dirk

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank Dirk!

Das hat mir bisher am meisten weiter geholfen. (habs aber noch nicht
ausprobieren können)

Noch ein paar Fragen:
1) Wenn ich bei meiner Schaltung beim Schieberegister 1 ausgebe
(Spalte)und bei PortD 0 (Zeile), dann fließt Strom (LED leuchtet) vom
Schieberegister zum uC, oder?

2) Wenn ich bei deiner Schaltung (pdf) beim Schieberegister 1 ausgebe,
muss ich dann auch für die Zeile 1 ausgeben damit der Transistor
durchschaltet und der Strom sozusagen gegen Masse abfließt?
Verstehe ich das richtig (man sieht ich bein ein Analog-technischer
Volltrottel) ?

Achja, den MAX7219 kannte ich schon. Scheint echt ein tolles Teil zu
sein. Leider nirgends unter 10 euro. Aber das mit dem Sample ist eine
gute Idee. :)


Danke!

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

bei dem Schieberegister fuer die NPN Darlington Transistoren muss eine
logische "1" anliegen . Bei den PNP Darlington muss eine logische
"0" anliegen.

Mfg

Dirk

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aha. die PNP sind aber nach dem Schieberegister, oder? also genau
ungekehrt.

hab ich das mit dem Stromfluss eigentlich richtig verstanden (abgesehn
davon dass ich gedacht habe es seien alles die gleichen npn
transistoren)?

könnte ich die npn mit den pnp vertauschen?

Danke!

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas,

bist du dir sicher, dass das Pin zur Zeilenansteuerung auch genügend
Strom liefern kann, um gegebenenfalls die komplette Zeile zu treiben?

Gruß Oliver

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Oliver,

ich glaub du meinst die Spalte, oder?
Also wenn die ganze leuchtet dann reicht es ohne transistor natürlich
nicht. Mit schon. Zumindest schauts so aus.

Ich werde jedenfalls so bald wie möglich den Vorschlag von Dirk
ausprobieren. Ich hoffe damit wird es gehn :)

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Öhm du solltest alles lassen wie du es anfangs geplant (Bild1) hast nur 
vllt, zwischen deinen Port D Ausgängen Treiber ULN bla bla 
(Masseschaltend)  schalten und dann LED Vorwiderstände rein, genauso 
nach dem Schieberegister einen Plus schaltenden Treiber kp TD62873 wenn 
ich das jetzt richtig im Kopf habe...da natürlich keine Vorwiederstände 
mehr dann sollte alles in der richtigen Helligkeit leuchten ;) die 
Treiber ersetzten die vielen Transistoren ;) have fun digga

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Chris (Gast):

Hast du mal einen Blick auf das Datum des (ehemals) letzten Postings 
riskiert? Der Thread ist FAST SIEBEN JAHRE alt!

Wer weiß ob die Leute heute noch leben?   ;o)

Gruß,
Magnetus

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ach ja vllt noch ne erklärung vor die dunklen leds ;) datenblatt 
AVR...ich kenns nich genau aber für gewöhnlich geben die max auf einen 
einzigen port dann nur 20 mA aus...dann müssten aber auch alle anderen 
aus sein ...also strom muss gleichzeitig aufgeteilt werden heist wenig 
strom genauso das schieberegister...das sind alles bausteine für logik 
anwendungen nich für "lasten" das sind nur die steuer für die großen 
weiter schaltenden halbleiter oder relais

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.