LED Matrix

Fragen zu Schaltungen, Elektronik, Elektrik usw.

Moderator: T.Hoffmann

Benutzeravatar
Achim H
Star-Admin
Star-Admin
Beiträge: 13067
Registriert: Mi, 14.11.07, 02:14
Wohnort: Herdecke (NRW)
Kontaktdaten:

Do, 06.10.11, 22:14

Mit 16 Zeilen und Spalten wird das sicherlich funktinieren. Da ich aber 4 8*8 Matrizen baue nicht da ich dann ja sozusagen 32 Zeilen und 32 Spalten hätte ginge es mit minimal 8 oder ?
Wenn Du jede Schaltung einzeln haben möchtest, dann bräuchtest Du 8 ICs.
8 Zeilen + 8 Spalten = 2 ICs
Die Schaltung 4mal = 8 ICs.

Im Prinzip brauchen nur die Anzahl Spalten und Zeilen erweitert werden, und das bekommt man mit 4 ICs schon hin.
Denk doch mal logisch:

Für eine 8 x 8 Matrix brauchst Du 2 ICs
für eine 8 x 16 Matrix brauchst Du 3 ICs
für eine 16 x 8 Matrix brauchst Du 3 ICs
für eine 16 x 16 Matrix brauchst Du 4 ICs.

Ein 12V Netzteil ist nicht so toll. Da müsstest Du einen 5V Schaltregler oder einen Spannungsregler nachschalten.
Besser wäre gleich ein 5V Netzteil zu verwenden. Und daran schließt Du alles an.
Pollin: Steckerschaltnetzteil 5V/2A
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Do, 06.10.11, 22:35

Ich würde auch bei der 4x2 IC Lösung (also 4x8x8) bleiben. Da es sich um eine Matrix Ansteuerung handelt, sind die LEDs ja immer nur 1/Anzahl LEDs pro Zeile/Spalte überhaupt in Betrieb. Bei 8 also 1/8 der Zeit. Damit bekommt ein 'dauerhaft' leuchtendes LED (bei 6mA Betriebsstrom) im Mittel gerade noch 0.8mA durchschnittlich. Bei 1/16 nur noch 0.4mA. Da wird es dann doch langsam dunkel...
wo wird Ground angeschlossen. Ist das einfach ein Kontakt zur Erden.
Nö, erden musst Du das nicht. Ground ist hier nur der allgemeine gemeinsame Minuspol (Deutsch meist als Masse bezeichnet).
ustoni
Auserwählter
Auserwählter
Beiträge: 2140
Registriert: Sa, 04.06.11, 12:39
Wohnort: Mechernich

Fr, 07.10.11, 06:00

Nein, dieses Netzteil ist nicht geeignet. Das Arduino-Board muss mit +5 V versorgt werden. Ein passendes Netzteil wäre hier zu finden:

http://www.elpro.org/shop/shop.php?q=RS-15-5

Dort dann den Typ "GS12E 5V 2A" auswählen. Mit 2 A hast Du dann auch genügend "Saft", um damit sowohl das Arduino-Board als auch Deine LED-Matrix zu versorgen.

Ums multiplexen wirst Du von vornherein nicht drum rum kommen. Wenn Du z.B. eine Kathode freischaltest und vier Anoden, um einen Balken zu erzeugen, addieren sich die Anodenströme. Dadurch steigt die Ausgangsspannung des mit der Kathode verbundenen Registerausgangs und der Strom je LED nimmt ab. Dadurch werden die LEDs dunkler. Bei 8 LEDs gleichzeitig kann es sogar passieren, dass Du den Registerausgang an der Kathode zerstörst, da dann die maximal zulässigen 35 mA überschritten werden können.

Zu Deinem Schaltplan: Pin 14 und Pin 10 der ICs werden mit VCC verbunden, also mit +5 V.
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Fr, 07.10.11, 10:50

Wofür 2A?
Bei 4x8x8 Aufbau können maximal 32 LEDs pro Zeiteinheit gleichzeitig an sein. Bei 6mA Betriebsstrom gibt das gerade mal 200mA. Arduino und 595'er brauchen nicht viel, also wären selbst 0.5A auch schon reichlich dimensioniert. Um das von ustoni angesprochene Problem (die LEDs werden dunkler, je nachdem wie viele in einer Zeiteinheit an sind) zu umgehen müsste man mit dem Strom nochmal kräftig runtergehen, so dass höchstens 20mA pro 8 LEDs fließen. Oder man müsste zusätzlich noch Treiber (z.B. ULN 2803) verwenden. Prinzipiell ist die Verwendung von Schieberegistern hier sehr gut erklärt:
http://www.rn-wissen.de/index.php/Portexpander_am_AVR

P.S. Willst Du wirklich die 256 LEDs selbst verlöten? Es gibt 8x8 Dot-Matrix Anzeigen auch fertig... Sind allerdings von der Konkurrenz, daher kann ich die hier nicht verlinken, aber Du kannst das in Google eintippen:
Dotmatrix-Anzeige-8x8-60x60mm-LT-1375
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 10:55

JA ich möchte alle LEDs selbst verlöten, ich habe ungefähr 16 Wochen Zeit dafür, sollte also kein Problem sein. Ausserdem brauche ich ja auch ein wenig Stoff über den ich schreiben kann. Muss nämlich 15 Seiten schreiben.
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Fr, 07.10.11, 11:05

Naja, Löten finde ich jetzt nicht soo spannend um damit viele Seiten zu füllen :)
Wie gesagt, wenn es eher hell werden soll, dann solltest Du über die Verwendung von Treiben nachdenken. Darüber kann man IMHO mehr schreiben als über das verlöten von 256 LEDs. Soll Dich aber nicht hindern! Es geht eigentlich auch recht schnell.
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 11:08

Es muss nicht sehr hell sein. Ich wollte nur nicht dass es zu dunkel ist sprich kaum erkannbar bei tageslicht in einem Raum.
Aber ich glaube dies wäre kein Problem mit meinen bisherigen Ansätzen.

Aber was für mich wichtiger ist, ob mein Schaltplan so so funktinieren würde, also ob ich alled LEDs seperat ansteuern kann?
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Fr, 07.10.11, 11:13

Ich wollte nur nicht dass es zu dunkel ist sprich kaum erkannbar bei tageslicht in einem Raum.
Erkennbar ist das schon. Da würde ich mir keine Sorgen machen.
Dann die Widerstände so dimensionieren, dass höchstens 20mA an einem 595'er Pin anliegen. Der Schaltplan ist ein wenig klein (oder ich hab schon zu schlechte Augen). Sieht aber auf den ersten Blick schon ok aus.
also ob ich alled LEDs seperat ansteuern kann?
Wie schon (mehrfach) erklärt: Nur mit zeitlichem Multiplexen. Aber dann ja.
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 11:19

Dann die Widerstände so dimensionieren, dass höchstens 20mA an einem 595'er Pin anliegen.

Brauch ich dann noch weitere Wiederstände als in meinem Schaltplan eingezeichnet?
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Fr, 07.10.11, 12:09

Nein. Brauchst Du nicht. Sie müssen halt nur so gewählt sein, dass es insgesamt passt.
Bei 20mA auf einer Leitung (wo max. 8 LEDs an sind) ergibt sich ein Strom von 2.5mA pro LED. Der 595er hat dann etwa 0.8V interne Verluste. Wenn nicht alle LEDs an sind entsprechend weniger, also kann man mit einem Durchschnittswert von 0.5V rechnen. Das bedeutet, bei 5V Betriebsspannung bleiben für die LEDs etwa 4.5V 'übrig'.
Da es sich hier um ein Schul-Projekt handelt würde ich möglichst günstige LEDs verwenden. Z.B. diese hier:
http://www.leds.de/Standard-LEDs/LEDs-5 ... -2-1V.html (5ct/Stück - Größere Mengen anfragen!)
Laut Messprotokollvon Lumi braucht diese LED bei 2.5mA genau 1.8V und ist da sogar am effektivsten. Also muss am Widerstand 2.7V verbraten werden (4.5V - 1.8V).
Damit dann 2.5mA fließen (R=U/I) ergibt sich ein Widerstandswert von 1080 Ohm. Also 1.1kOhm oder auch 1.2kOhm.
ustoni
Auserwählter
Auserwählter
Beiträge: 2140
Registriert: Sa, 04.06.11, 12:39
Wohnort: Mechernich

Fr, 07.10.11, 13:43

Ich würde es bei der Dimensionierung der Widerstände so belassen wie gehabt. Stattdessen solltest Du von vornherein multiplexen. Zwar kenne ich die Programmiersprache für Dein Board nicht, ist aber prinzipiell egal. Hier mal das Prinzip, wie ich es programmieren würde:

Für jedes Array brauchst Du 2 digitale (bzw. binäre bzw.Boolsche) Variablen mit 8 Bit Breite und 8 Bit Tiefe (also ein Array mit 8 Listeneinträgen; wenn das nicht geht, eben je 8 Variablen, also insgesammt 16). In die eine wird das Bitpattern für die Anoden geschrieben, Also eine 1 für LED an, eine 0 für LED aus. Dabei entspricht das linke Bit des ersten Listeneintrags der ersten LED oben rechts, das rechte Bit der letzten Diode oben rechts, usw.. In die andere Variable kommt das Bitpattern für die Kathoden, das wäre dann die erste Variable um 90 Grad gedreht. Das erste Bit des ersten Listeneintrag entspricht der linken Spalte oben, das letzte Bit der linken Spalte unten usw.. Mit EXCELL sind diese Pattern recht schnell generiert, das Übertragen in die Software sollte kein Problem darstellen.

Beispiel für drei senkrechte Striche, unterstrichen (zur Veranschaulichung: gelb hinterlegt = LED leuchtet):

Pattern.jpg
Pattern.jpg
Für die Unterroutine (Subprocedure) des Multiplexens müssen nun für jede LED 2 neue 8 Bit breite Variablen generiert werden, die anschließend zu einer 16 Bit breiten Variable zur Ansteuerung der Register zusammengesetzt wird. Für die 8 Bit der Anode wird zuerst der erste Listeneintrag der Anodenvariable mit dem Bitpattern 10000000 AND-verknüpft. Steht oben links in der Anodenvariablen eine 1, ist das Ergebnis 10000000, ansonsten 00000000. Ähnlich wird mit dem ersten Listeneintrag der Kathodenvariablen verfahren, allerdings mit einer NAND-Verknüpfung (ggf. Kombination AND und NOT). Das Ergebnis ist entweder das Pattern 01111111 oder 11111111. Die beiden Pattern dann als 16 Bit Wort an die Schieberegister senden und ein Delay con z.B. 20usec einfügen. Jetzt werden die restlichen 7 Bit der Anode abgearbeitet (Pattern 01000000, 00100000, usw.). Das Kathoden-Pattern wird dabei nicht verändert.

Anschließend wird das Kathodenpattern auf 01000000 gesetzt und das ganze wiederholt usw..

Mit einer verschachtelten FOR...NEXT-Schleife (oder WHILE DO) ist das Ganze recht schnell programmiert. Sollten Arrays nicht möglich sein, wird die Routine etwas länger, mit den Funktionen COPY und PASTE aber auch kein Akt.

Die Vorteile des Multiplexens liegen auf der Hand:

1. Alle LEDs leuchten immer mit der gleichen Helligkeit
2. Sollte sich das System einmal aufhängen, fließen durch die gerade aktive LED nur 6 mA, sie leuchtet zwar heller, brennt aber nicht durch.
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 15:15

Pin 14 und Pin 10 der ICs werden mit VCC verbunden, also mit +5 V.
Wenn ich Pin 14 beider ICs mit Vcc verbinden werde dann hat der auf dem Schaublild linke IC ja nur noch 2 Verbindungen zum Arduino, dass kann doch gar nicht sein oder?

Nö, erden musst Du das nicht. Ground ist hier nur der allgemeine gemeinsame Minuspol (Deutsch meist als Masse bezeichnet).
Der gemeinsame Minuspol von arduino und LEDs?
Würde das heißen dass der Verbindung von Vcc an 5 Volt der gemeinsame Pluspol wäre?

Wie genau kann ich denn mit einem Netzteil Arduino und LEDs gelichzeitig mit Strom versorgen.


Ich würde dann dieses Netzteil benutzen http://www.pollin.de/shop/suchergebnis. ... &absenden=
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Fr, 07.10.11, 15:20

Der gemeinsame Minuspol von arduino
und 595. Die LEDs werden doch gar nicht direkt mit Minus verbunden. Das Netzteil passt. Damit kannst Du Arduino und die 595'er versorgen.
Schaltplan... Schau Dir den Link bei rn-wissen noch mal an: http://www.rn-wissen.de/index.php/Portexpander_am_AVR
Suntrader
Mega-User
Mega-User
Beiträge: 167
Registriert: Mi, 05.10.11, 00:51

Fr, 07.10.11, 15:23

ustoni hat geschrieben:Wenn LEDs als Matrix verschaltet werden, kann nur Multiplexen Sinn machen. Ansonsten hätte man kein Anzeigeelement, sondern eine Effektbeleuchtung, sprich 8fach-Lichterkette.
Sorry aber dem kann ich nun gar nicht zustimmen.
natürlich macht es Sinn wenn man ein 256bit schieberegister einsetzt, Währen der Anzeige hat z.b. der µC nichts zu tun, ausser evt pwm, was nen timer dann automatisch übernimmt. ohne pwm ist das Bild absolut ruhig, usw., man kann das feld mit nur 3 Leitungen beliebig lang kaskadieren. kommt eben auf die anwendung an ;)
Was die Ansteuerung betrifft: es ist sogar noch viel schlimmer. Wenn Du in die Register ein 16-Bit-Datenwort geschrieben hast, hast Du genau eine LED addressiert. Um alle LEDs einer 8x8-Matrix auch nur ein einziges mal anzusteuern, sind 8 x 8 x 16 = 1024 Bit nötig.
Die Rechnung passt ja nun absolut nicht. Man organisiert das in 32 Spalten, die mal 8 mal ausgibt um das 16x16Feld einmal zu zeichnen.
Und zur letzten Frage: Nein, das ist schaltungstechnisch die Minimallösung. Software, also die Ansteuerung kostet praktisch nichts, Hardware schon.
Die Minimallösung wäre direkt die pins vom uC zu nehmen, wenn man die passenden LEDs nimmt halten die das auch aus.


Achim H hat geschrieben:
Die LEDs sind als Matrix verschaltet. Bei dieser Verschaltung ist es nicht möglich, mehr als eine LED gleichzeitig definiert anzusteuern.
Das stimmt allerdings.
Falsch, es wird immer eine komplette Spalte gleichzeitig angesteuert, darum muß die Ansteuerung der Reihe ja auch ein vielfaches des Stroms leisten können.
Wenn man auf dieser Matrix beliebige Zeichen darstellen möchte, müssen die LEDs gemultiplext werden.
Es muß nicht, es kann, auch wenn man ein 256bit Schiebereister verwendet, kann man beliebige Zeichen darstellen.
Geht das nicht auch einfacher?
das einfachste sind max7219, die kosten nur cents, und machen alles selber, das man für ne 8x8 braucht. man braucht zwar auch 16*8 um ihn zu füllen, aber das mutiplexen macht er, danach überträgt man nur noch die änderungen. d.h. mit 4 ics hast du alles was dur für 16x6 16 brauchst, da sie kaskadierbar sind kommt du mit 3 pins aus. für das ganze würde dann ein Tiny reichen, da noch genug pins übrig bleiben für z.B. Taster.
Wenn man mit 595, arbeiten will und selber multiplexen, und 12 pins verbauen will, 3 pins für nen 138, 3 pins für clk,load,selekt , 4 für daten (an die 4 595) dann schiebt man 4*8 bit raus, schaltet dunkel, setzte den 138 (row), schalet wieder hell. d.g. mit 8* (8 bit rausschiften + 138 setzten) hat man das komplette 16x16 feld gezeichnet. die ausgänge des 138 sollte man aber noch mit T treiben, damit ausreichen peakstrom da ist.

3. Wiesoe brauch ich den 595 32 mal?
Die brauchst du 32 mal, wenn du die Einfache Berechnug die oben steht benutzen willst. Jeder Ausgang ist dann statisch.
Wenn du mutiplext, dann zeichnest du die einzelen Spalten ja nacheinander, Sprich, eine leuchtet, die anderen sind aus. Wählst du 8 Spalten, sind 7 immer dunkel, das mußt du durch höhere Ströme ausgleichen, um die gleiche Helligkeit zu erreichen, darum ist der Peakwert der LED z.B. (500mA statt 25mA im Dauerbetrieb) dann interessant was sie verkraftet. . CRI 93+ hatte da auch schon was dazu geschrieben. Du mußt also Einrechnen das du nur eine wesentlich kürzere Zeit hast die Energie zur LED zu bringen, z.B. ca 1/8 der Zeit, darum benötigst du auch 8 mal soviel Strom beim multiplexen, gegenüber der statischen Version.

Ich habe durch den Tipp von ustoni diese im Auge.
http://www.leds.de/Standard-LEDs/LEDs-3 ... -2-1V.html
Bei denen Stand jetzt kein Datenblatt dabei aus denen man die entsprechenden Daten herausholen konnte. Evt wenn ihr damit spielen wollte, wäre eine augenfreundlichere Farbe sinnvoll. Vielleicht Amber. Es gibt auch fertige 8x8 Matrix zu kaufen, bekommt man im 10er Pack so um 10-15 Euro, sieht dann sauber aus. Da muß man dan auf jeden fall multiplexen da sie nur 16 Anschlüsse haben. Kommt aber auf die Vorgabe an, die ihr habt, auf jeden Fall hat man damit weniger Lötarbeit.
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 16:10

das einfachste sind max7219
Wie muss ich diese dann anschließen?
Borax
Star-Admin
Star-Admin
Beiträge: 12243
Registriert: Mo, 10.09.07, 16:28

Fr, 07.10.11, 16:15

max7219, die kosten nur cents
Aber nicht hier. Vielleicht im Großhandel.
http://www.idealo.de/preisvergleich/Lis ... -shop.html
Benutzeravatar
Achim H
Star-Admin
Star-Admin
Beiträge: 13067
Registriert: Mi, 14.11.07, 02:14
Wohnort: Herdecke (NRW)
Kontaktdaten:

Fr, 07.10.11, 16:19

Suntrader hat geschrieben:
Die LEDs sind als Matrix verschaltet. Bei dieser Verschaltung ist es nicht möglich, mehr als eine LED gleichzeitig definiert anzusteuern.
Das stimmt allerdings.
Falsch, es wird immer eine komplette Spalte gleichzeitig angesteuert, darum muß die Ansteuerung der Reihe ja auch ein vielfaches des Stroms leisten können.
Mit "definiert" war nicht nur eine spalten- oder zeilenweise Darstellung, sondern eher sowas wie ein Schachtbrettmuster gemeint. Sowas kann man nicht als 1 Bild darstellen, dafür braucht man mehrere Durchgänge.
ustoni
Auserwählter
Auserwählter
Beiträge: 2140
Registriert: Sa, 04.06.11, 12:39
Wohnort: Mechernich

Fr, 07.10.11, 16:29

Hallo, MeineKekse!

Sorry, ich meinte natürlich Pin 16 statt Pin 14.

So Leute wie Suntrader am besten ignorieren. 16 Bit je LED x 8 Spalten x 8 Reihen = 1024 Bit, daran ändert auch kein noch so langer Beitrag was Teilsatz gelöscht, Gruß Sailor
P.S.:
Die Sache mit dem Multiplexen hat er noch nicht mal ansatzweise verstanden.
Suntrader
Mega-User
Mega-User
Beiträge: 167
Registriert: Mi, 05.10.11, 00:51

Fr, 07.10.11, 16:58

ustoni hat geschrieben:Hallo, MeineKekse!

Sorry, ich meinte natürlich Pin 16 statt Pin 14.

So Leute wie Suntrader am besten ignorieren. 16 Bit je LED x 8 Spalten x 8 Reihen = 1024 Bit, daran ändert auch kein noch so langer Beitrag was Teilsatz gelöscht, Gruß Sailor
P.S.:
Die Sache mit dem Multiplexen hat er noch nicht mal ansatzweise verstanden.
16 LEDS multipliziert mit Spalten und Reihen gibt die Dimension Bits? Was auch immer du da gleichsetzten willst es ist Unsinn.
Das Gleichheitszeichen in "Deiner" "tollen Formel" ist absolut unpassend.

Deine Unverschämtheiten verbiete ich mir, wenn Du Ahnung hättest . würdest du z.B. Pin 10 nicht an Vcc legen sondern an Reset.
Und würdest nicht vorschlagen, das man 16 bit rausschieben muß um 1 LED anzusprechen, man spricht damit selbst nach diesem dem schlechten Design 8 LEDs an, sprich das x8 Spalten ist einfach falsch.
Erst nachdenken, und überlegen wieviel DU davon verstehst, bevor du andere Leute beleidigst.
Wenn Du in die Register ein 16-Bit-Datenwort geschrieben hast, hast Du genau eine LED adressiert. Um alle LEDs einer 8x8-Matrix auch nur ein einziges mal anzusteuern, sind 8 x 8 x 16 = 1024 Bit nötig.
Also genau eine LED, ja ja DU hast Ahnung, ... Meine Kekse wenn du keine 6 haben willst hör nicht auf ihn.
Sorry aber so unqualifiziertes Zeug hab ich hier nur von Dir gelesen.
Es wäre schön wenn du dich mit der Sache beschäftigen würdest und nicht mit Beleidigungen.
ustoni
Auserwählter
Auserwählter
Beiträge: 2140
Registriert: Sa, 04.06.11, 12:39
Wohnort: Mechernich

Fr, 07.10.11, 17:03

Inhalt gelöscht, Gruß Sailor
Suntrader
Mega-User
Mega-User
Beiträge: 167
Registriert: Mi, 05.10.11, 00:51

Fr, 07.10.11, 17:47

MeineKekse hat geschrieben:
das einfachste sind max7219
Wie muss ich diese dann anschließen?
Die Max7219 sind spezielle Bausteine, die genau für diese Aufgabe ausgelegt sind. Sie habe 8 Anschlüsse für der Reihen und 8 für die Spalten. Du muß da also nur die LEDs in der 8x8 Matrix anlöten.
An einem weitern Pin kann du den Strom einstellen den die LEDs bekommen soll, ( da reicht ein Widerstand)
Von der µC Seite ist es fast genauso wir der 585,es befindet sich ein 16 Schieberegister darin, das du über clock und data füllst, dann gibt es auch eine load Anschluss mit dem die Daten übernommen werden.
Dieser Baustein ist auch kaskadierbar , sprich du kannst die 4 7219 die du brauchst hintereinander Schalten, do das du nur insgesamt 3 Pins brauchst, oder getrennt, das du 4*3 brauchst , und je 2 kaskadiert dann brauchst du 6 Anschlüsse.
Der 7219 macht dann alles was fürs multiplexen benötigt wird. ausserdem kann er z.b. dimmen.
er hat intern hat er 14 Register, 8 sind für die Daten, die angezeigt werden, die anderen sind für die Steuerung, z.b. für die Helligkeit (0xXA) . Wenn man nur 6 Spalten braucht trägt man das im Register 0xXB ein.
Mit dem Chip kann man auch 7 Segmentanzeigen betreiben, (7 Segmentanzeigen ist toplogisch das gleiche wie wenn man eine Matrix wie du, nur das die 8 Dioden *) dadrin, so angeordnet sind das sie zahlen darstellen können) , dafür bringt er dann auch gleich den Zeichensatz mit. man muß also nur die 4 Bit für den Wert übergeben)
Nach dem initialisieren, brauchst du ihm dann immer nur noch sagen in Spalte x bitte dieses Bitmuster. (16 Bits die übertragen werden) den Rest macht er selbständig.
Hardwareseitig, 1 Widerstand ca 9kOhm mit dem du den Strom einstellst wischen Pin 18 und VCC, dann nur noch die LEDs dran, und natürlich immer nen Pufferkondensator. 3Leitung + GND zum µC, und schon ist die Hardware fertig.

Wenn du die Gedanken machst Deine 15 Seiten vollzubekommen, dann schreib doch über die verschiedenen Arten die 256 angesteuert zu bekommen, wie du hier schon mitbekommen hast gibt es da eine menge Möglichkeiten, jeder hat ihre vor und Nachteile.
Die klassische Methode ist z.b. die Spalten über einen 74x138 zu versorgen, du legst 3 Bit binär an, und an den 8 Ausgängen hast du die Signale die du brauchst. Wenn du diese noch treibst, für die Spalten 4* 595, dann hast du eine (multiplexmäßig gesehen ) 32*8 matrix, die du natürlich als 16x16 (optisch) aufbauen kannst.
(Fürs Datenblatt nach "Maxim 7219" suchen)
*) 7 segmentanzeigen haben auch manchmal mehrere Leuchtdioden Reihe geschaltet für die langen Segmente.
ustoni
Auserwählter
Auserwählter
Beiträge: 2140
Registriert: Sa, 04.06.11, 12:39
Wohnort: Mechernich

Fr, 07.10.11, 18:08

???
*) 7 segmentanzeigen haben auch manchmal mehrere Leuchtdioden Reihe geschaltet für die langen Segmente.

manchmal???
Suntrader
Mega-User
Mega-User
Beiträge: 167
Registriert: Mi, 05.10.11, 00:51

Fr, 07.10.11, 19:24

ustoni hat geschrieben:???
*) 7 segmentanzeigen haben auch manchmal mehrere Leuchtdioden Reihe geschaltet für die langen Segmente.

manchmal???
Normalerweise antworte ich auf Forentrolle nicht. Aber höre bitte endlich auf hier rumzutrollen, du störst die anderen.
Wenn die der Begriff "manchmal" nicht geläufig ist, dann versuche ihn bitte in einen entsprechenden Forum zu erfragen. Bei der Gelegenheit, kannst du vielleicht lernen das im deutschen nur ein "?" geschrieben wird, mehrere gelten einfach nur als rumpöbeln.
.. du brauchst nicht glaube das ich auf Dich nochmal reagiere.

um auch ontopic etwas zu schrieben
@MeineKekse Bei deinem Schaltplan, wenn du den realisieren solltest muß du auf jeden Fall auch noch Kondensatoren anbringen, z.B. 100nF an jedem 595 +uF an geeigenten Stellen,gerade bei mutiplexen ist das sehr wichtig. Ist einer der Nachteile vom Multiplexen, das es viel Störungen verursacht, die du unterdrücken muß.
Als µC reicht eigentlich nen mega, mußt nicht unbedingt nen ganzen Ardurino nehmen. Am besten besorgst du dir dazu nen ISP Interface 15€, und machst die dann nen bootloader drauf. evt hast du auch nen freund der die einen rein brennt, dann brauchst du nur eine Serielle zum programmieren. Als Netzteil nen usb Netzteil dazu.
(Den 7219 gibt übriges um 1€ )
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 19:36

So nochmal von meiner Seite hier ist ja mal ganz schön was los...

Ich kommentiere das ganze mal
(Den 7219 gibt übriges um 1€ )
Wo? ich finde ihn leider nur immer für mehr.

Bei deinem Schaltplan, wenn du den realisieren solltest muß du auf jeden Fall auch noch Kondensatoren anbringen, z.B. 100nF an jedem 595 +uF an geeigenten Stellen,gerade bei mutiplexen ist das sehr wichtig. Ist einer der Nachteile vom Multiplexen, das es viel Störungen verursacht, die du unterdrücken muß.
Brauch ich die nocht wenn ich denn max7219 benutze?
An einem weitern Pin kann du den Strom einstellen den die LEDs bekommen soll, ( da reicht ein Widerstand)
Einen Wiederstand zusätlich oder pro Matrix nur einen?

Die Max7219 sind spezielle Bausteine, die genau für diese Aufgabe ausgelegt sind.
Kennt jemand villeicht ein gute Erklärung wo ich was genau anschießen muss?


Ich habe dies hier gefunden
Note that the MAX7221 is definitely preferred over the MAX7219 for this technique. This is because in shutdown, the MAX7221 digit drivers are high impedance, rather than V+ as in the MAX7219.
Stimmt das oder ist es egal welchen ich benutze?
MeineKekse
Super-User
Super-User
Beiträge: 72
Registriert: Mi, 05.10.11, 17:31

Fr, 07.10.11, 20:34

Zitat gelöscht, Gruß Sailor
Fakt ist doch aber dass da benutzen eines MAX7221 einfacher ist als das benutzen der 595 zumal sie genau für ein 8*8 LED ausgelegt sind und multiplexen übernehmen, wass ich sonst programmieren muss.

Ich hoffe das sieht hier jeder ein und wenn nicht sollte einfach ein Gegenbeispiel gebracht werden und schon sieht die Welt anders aus.
Mann muss sich nicht immer Streiten. Einfach mal ganz cool bleiben :) .
Antworten