Ich habe vor mir eine "kleine" 8×24-LED-Matrix mit selbst erstelltem Schaltplan zu bauen, um dabei auch Eagle besser kennenzulernen. Da dies meine erste erstellte Schaltung überhaupt ist, würde ich gerne von euch wissen, ob das funktionieren kann oder ob ich noch etwas Grundlegendes falsch gemacht habe. Außerdem habe ich noch ein paar zusätzliche Fragen. 1. Die Widerstände für die LEDs sind so berechnet, dass ich die Matrix mit einem einfachen 1A-Netzteil mit 9V betreiben kann. Pro LED soll ein Pulsstrom von 120mA fließen, durch jede LED fließen dann durchschnittlich 5mA. Sind Standard-LEDs dabei ausreichend hell? Oder soll ich mir lieber ein neues Netzteil kaufen, was bis zu 4A liefert? 2. Ist es sinnvoll, wie in der Schaltung zwei Stromkreise zu haben, einen 5V für den AVR und einen mit höherer Spannung für die LEDs, damit ich über die Spannung die LEDs später heller machen kann und den 7805 nicht so sehr auslaste? 3. Ich würde die Matrix auch gerne wahlweise nur über den USB-Anschluss betreiben und ein Netzteil als "Verstärker" dazuschalten können. Lässt sich die Schaltung mit geringem Aufwand dazu erweitern? Die Den +-Pol vom USB-Anschluss einfach mit der Versorgungsspannung der Schaltung zu verbinden, halte ich für keine gute Idee, wenn ich später ein Netzteil mit z. B. 12V dazuschalte, außerdem wäre der 7805 dann ja noch im Weg.
Hallo Timo, Du machst den gleichen Fehler, den ich dank dieses Forums auch schon vorher für mich erkennen musste. Du musst die Zeilen multiplexen, nicht die Spalten. Dann hast Du nur noch ein 1:8 Tastverhältnis für die LEDs, außerdem verläuft das Timing viel relaxter. D.h. Du schiebst die gesamte Zeile in die Schieberegister und aktivierst nur einen Zeilen-Ausgang! Während die Zeile gelatcht ist kannst Du im Hintergrund schon die nächste Zeile einschieben usw. In deiner Hardware musst Du dann die Vorwiderstände in die 24 Spalten verlagern und natürlich anpassen. Glaube mir, mit 120mA Spitzenstrom durch die LEDs hättest du vermutlich nicht lange Freude. LEDs sterben auch an kurzen Spitzen schnell.
Hallo Harald, ich habe vor, die Matrix zusätzlich mit PWM zu betrieben und habe deshalb jeweils eine Reihe an den AVR gehangen, damit ich jede einzelne LED mit weniger aufwand ausschalten kann. Denn um eine einzelne LED abzuschalten, müsste ich sonst die komplette Zeile per SPI rausschieben und verliere dabei Rechenzeit und damit mögliche PWM-Stufen. So ist zumindest meine Vorstellung. Und um 120mA habe ich mir keine Sorgen gemacht, da ich im Artikel zur LED-Matrix gelesen habe, dass bis zu 320mA möglich sind.
Wenn Du PWM machen möchtest musst Du dafür überhaupt keine Rechenzeit opfern. Einfach alle Enable-Leitungen der Schiebereg. (Pin 13) an einen Hardware-PWM Ausgang hängen, bei AVR glaube ich OC1A. Und schon ergibt sich ein schönes PWM mit unglaublich vielen Abstufungen.
Hallo Timo, > 1. Die Widerstände für die LEDs sind so berechnet, dass ich die Matrix > mit einem einfachen 1A-Netzteil mit 9V betreiben kann. Pro LED soll ein > Pulsstrom von 120mA fließen, durch jede LED fließen dann > durchschnittlich 5mA. Bei Zeilenmultiplex fließt Durch die einzelne LED nicht durchschnittlich 5mA sondern mindestens 5mA und max. 120mA, je nach dem, wie viele du gleichzeitig eingeschaltet hast in deiner Zeile. Wenn du das Glück hast, das die LEDs diese Prozedur überleben, so hast du zumindest unterschiedliche Helligkeiten, je nach Zeileninhalt. Bei Spaltenmultiplex fließen immer 120mA durch jede LED, kann in Verbindung mit entsprechend kurzen Impulszeiten funktionieren (max. Strom lt. Datenblatt). Meine Empfehlung: wie schon von Harald vorgeschlagen, bau die Widerstände in die Spaltenleitungen und benutze einen Zeilenmultiplex. > 2. Ist es sinnvoll, wie in der Schaltung zwei Stromkreise zu haben, > einen 5V für den AVR und einen mit höherer Spannung für die LEDs, damit > ich über die Spannung die LEDs später heller machen kann und den 7805 > nicht so sehr auslaste? Höhere Spannung brauchst du eigentlich nicht, da die Helligkeit der LEDs über den Strom gesteuert wird, die Flußspannung bleibt dabei relativ konstant. Kleinerer Vorwiderstand = hellere LED. Aber bitte dringend die maximalen Ströme im Datenblatt beachten, vor allem im Impulsbetrieb. Gruß Reinhard
Was habt ihr nur aller mit dieser blöden Emitterschaltung? Warum nehmt ihr nicht die Kollektorschaltung zur Ansteuerung der Zeilen/Spalten?? Das spart sogar noch den Basiswiderstand... Und ich würde beides (Zeilen UND Spalten) über das Schieberegister laufen lassen. (also ein vierter 74hc595)
@Matthias:
Grundsätzlich würde ich auch ein 4. Schieberegister nehmen und dein
Einwand mit der Kollektorschaltung ist auch OK, aber die ursprüngliche
Fragestellung war doch die:
>würde ich gerne von euch wissen, ob das funktionieren kann oder ob ich noch etwas
Grundlegendes falsch gemacht habe.
Harald wrote: > Wenn Du PWM machen möchtest musst Du dafür überhaupt keine Rechenzeit > opfern. Einfach alle Enable-Leitungen der Schiebereg. (Pin 13) an einen > Hardware-PWM Ausgang hängen, bei AVR glaube ich OC1A. Und schon ergibt > sich ein schönes PWM mit unglaublich vielen Abstufungen. Das klingt für mich wie ein PWM für alle LEDs einer Reihe, mein Ziel ist PWM für jede einzelne LED, damit das Display wie eine Art Graustufendisplay nutzbar ist. Und um möglichst viel Kontrolle über jede einzelne LED zu bekommen, habe ich mir gedacht, einen ganzen Port am AVR dafür zu benutzen. Ich kenne mich mit Transistoren und den Schaltungen noch nicht gut aus, aber wie würde das mit der Kollektorschaltung aussehen? Muss ich dafür die Transistoren nicht vor die LEDs hängen? Und lassen sich überhaupt mit 5V vom AVR die LEDs mit z. B. 12V schalten? Reinhard, ich will die Widerstände so groß haben, dass ein einfaches Netzteil mit 1A die Matrix betreiben kann. Um die Matrix dann heller zu bekommen, finde ich es einfacher, die Spannung zu erhöhen, anstatt alle Vorwiderstände auszutauschen. Hat noch jemand eine Idee, wie man die Schaltung so ändern könnte, dass sie auch nur mit der USB-Stromversorgung funktioniert?
>Und um möglichst viel Kontrolle über jede einzelne LED zu bekommen, habe >ich mir gedacht, einen ganzen Port am AVR dafür zu benutzen. Tja, dann musst Du es per SW realisieren oder ein AVR mit 8 echten PWM Ausgängen nehmen. Allerdings: - Bei dieser kleinen Matrix würde ich mir nicht zu viel von der Wirkung der Graustufen versprechen. - Die gesamte Helligkeits-Information (8 Byte pro Spalte!!) bekommst Du noch irgendwie programmtechnisch realisiert? - Damit es wirklich flimmerfrei wird (bei "Graustufen" meiner Meinung absolut erforderlich) musst du erfahrungsgemäß auf ca. 70 Hz (o.ä.) Wiederholfrequenz gehen. Jede Spalte leuchtet dann noch 600 Mikrosekunden. Wie viele Helligkeitsstufen möchtest Du denn machen? Der AVR schafft das, keine Frage. Allerdings muss die Spaltentreiberstufe dann schon einigermaßen optimiert sein um das sauber abzubilden. >Und lassen sich überhaupt mit 5V vom AVR die LEDs mit z. B. 12V >schalten? Dann nimm doch z.B. einen UDN2981, ich weiß aber nicht wie zackig der schalten kann. Bau doch einen winzigen Teil der Matrix provisorisch auf (z.B. nur 1..8 LEDs) , schreibe das komplette Programm und prüfe, wie Du mit dem Ergebnis zufrieden bist.
Ich habe meinen Schaltungsentwurf mal überarbeitet und Controller und Display getrennt, damit ich die Steuerung auf einer kompakten Platine unterbringen kann, dafür habe ich gleich mal versucht ein Layout zu entwerfen. Die Matrix soll jetzt mit Zeilenmultiplex betrieben werden. Mein Ziel ist es, mit möglichst wenig Taktzyklen eine bestimmte LED ein-/ausschalten zu können, deshalb habe ich mir eine Schaltung mit FlipFlops statt Schieberegistern überlegt. Für den Controller habe ich gleich versucht, eine Platine zu entwerfen. Ich würde gerne nochmal von euch wissen, ob ihr glaubt, dass die Schaltung so funktioniert, wie ich es mir vorstelle und ob meine Platine in Ordnung ist (habe noch nie eine entworfen/geätzt und will unbedingt damit anfangen :) ) Gruß Timo
Hi ... Leute ich hab ma ne ganz simple Frage ich hab jetzt mein Elektroniker in Maschinen- und Antriebstechnik gemacht ich hab auch etwas Erfahrung mit Schaltungen aufbauen und den ganzen simplen Kram hab aber bei nem scheiß Betrieb gelernt wo man sich net wirklich um sowas gekümmert hat Deshalb wo lernt man sowas ... oder wie? habt ihr irgendwelche tipps für mich mich hab net ma Ahnung was multiplex is usw
@ Toga (Gast) >Deshalb wo lernt man sowas ... oder wie? In der Praxis. Auch viel im Internet. Learning by doing. > habt ihr irgendwelche tipps für mich http://www.mikrocontroller.net/articles/Spezial:Alle_Seiten > mich hab net ma Ahnung was multiplex is usw Multiplexen LED-Matrix MFG Falk
Schau mal hier: http://www.sparkfun.com/commerce/tutorial_info.php?tutorials_id=44#Adding%20More%20LED%20Matrix%20Controllers
Hallo, ich versuche gerade eine ähnlich Schaltung zu entwerfen. Den 74AC11238 gibt es nicht mehr. Kann ich dafür auch einen 74AC138 verwenden? MFG
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.