Hallo, habe den sehr interessanten Artikel zum Bau eines LED-Cubes gelesen http://www.mikrocontroller.net/articles/LED_cube und würde den gerne (erstmal) in kleinerer Ausführung nachbauen. Die Unterstützung für Schriftzeichen etc. ist erstmal nicht so wichtig. Als Größe hätte ich mir 5x5x3 vorgestellt. Nach intensivem Studieren der dazugehörigen Schaltpläne für die Leds würde ich dazu 20 I/O Pins benötigen um jede LED theoretisch einzeln ansteuern zu können (evtl. schnell hintereinander, damit der Eindruck entsteht sie leuchten gleichzeitig) Nun hat ja der ATmega8 28Pins, 23davon sind als I/O Pins verwendbar soweit ich weiß. zu den Fragen: kann ich die Software zum ansteuern der Leds auf den ATmega brennen, wenn er in meinem Enwicklungsboard (myavr board usb mk2) steckt, ihn dann herausnehmen in eine geeingete Schaltung verbauen und dann 20 der 23 I/O Pins zum ansteuern der LEDs verwenden? (Ich bin Anfänger in Sachen Mikrocontroller) Und reicht der Atmega allein aus, um beispielsweise 20Leds "gleichzeitig" mit Strom zu versorgen, oder muss da irgendwas mit n-Mosfets wie in dem genannten Artikel gemacht werden??? Vielen Dank schonmal im Vorraus für die Antworten. mfg Chris
Chris schrieb: > zu den Fragen: > kann ich die Software zum ansteuern der Leds auf den ATmega brennen, > wenn er in meinem Enwicklungsboard (myavr board usb mk2) steckt, ihn > dann herausnehmen in eine geeingete Schaltung verbauen und dann 20 der > 23 I/O Pins zum ansteuern der LEDs verwenden? Ja. > Und reicht der Atmega allein aus, um beispielsweise 20Leds > "gleichzeitig" mit Strom zu versorgen, Wenn du da nicht Low-Current LEDs benutzt, gehts nicht. Der Mega hat eine Beschränkung im kompletten Stromverbrauch aller Ports, sowie den Stromverbrauch auf einem einzelnen Pin. > oder muss da irgendwas mit > n-Mosfets wie in dem genannten Artikel gemacht werden??? Du wirst Treiber brauchen.
Chris schrieb:
> (Ich bin Anfänger in Sachen Mikrocontroller)
dann würde ich mit etwas Leichterem anfangen...Frust ist da schon
vorprogrammiert...
...oder vielleicht erstmal das AVR-Tutorial durcharbeiten: Zitat: "Ab und an stellt sich folgendes Problem: Man würde wesentlich mehr Ausgangspins oder Eingangspins benötigen als der Mikrocontroller zur Verfügung stellt. Ein möglicher Ausweg ist eine Porterweiterung mit einem Schieberegister." http://www.mikrocontroller.net/articles/AVR-Tutorial:_Schieberegister Volker
Hallo, danke für eure schnellen Antworten. das Tutorial habe ich schon begonnen durchzulesen und ich mache schon gute Fortschritte beim Ansteuern der 3 LEDs die auf meinem Entwicklungsboard verbaut sind. Aber irgendwie brauch ich mal ein Projekt, das etwas "anspruchsvoller" als die 3 fest verbauten LEDs ist. Und der LED-Cube reizt mich schon sehr.:-) @Karl Heiz du sagst der ATmega8 (L) hat Beschränkungen im Stromverbrauch. Weißt du die Werte zufällig? Aus dem Datenblatt wurde ich nicht schlau. Zur Info, ich habe mir die Bauteile schon bestellt und folgende LED soll eingesetzt werden: http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=A5337;GROUPID=3024;ARTICLE=54104;START=0;SORT=artnr;OFFSET=100;SID=28XvPPF6wQARwAAGj67kY8f1b1f9da05076fb6f8d8902b5039d37 diese hat den Vorwiderstand bereits integriert und "verbraucht" bei 5V ca. 13mA. Genügt es jetzt auch nicht die LEDs schnell einzeln nacheinander anzusteuern? Oder liegen die 13mA bereits über der Grenze für die Stromversorgung??? Alternativ, würde dann die Schaltung aus dem Anhang funktionieren? auch für mehrere LEDs gleichzeitig, die parallel geschalten sind? mfg Chris
kann mir bitte jemand die Fragen aus vorangegangenem Post beantworten?? Vielen Danke :-):-)
Atmega8 Datenblatt, Seite 242 "Electrical Characteristics", nimm aber den Text bei "*NOTICE" ernst. Ich gehe aufgrund der 20 pins mal davon aus, dass du 5x3 Grundflaeche und 5 Hoehe hast? Macht also bei deinen LEDs 15*13mA=195mA fuer die Kathoden pro Ebene. Also: Anoden sourcen ja (allerdings bist du da schon ziemlich an der Grenze, ich wuerds nicht machen), fuer die Kathoden brauchst du dann auf jeden Fall 5 Transistoren.
hey Andreas, danke für deine Antowort!! du hast richtig gedacht, 5x3 Grundfläche und 5 in der Höhe habe ich geplant. Finde ich besser als 4x4x4, weil man so auf der Frontseite (5x5) auch evtl Schriftzeichen anzeigen lassen kann. Deine Rechnung leutet mir ein, allerdings sind die gerechneten 195mA ja nur die Ausnahme, wenn alle LEDs einer Ebene mal an sind. Und nachdem als oberster Grenzwert 300mA angegeben sind, ist das doch noch vertretbar. Oder wo siehst du das Problem? Zeigt die Erfahrung, dass die Grenze deutlich niedriger als 300mA liegt? Würde meine Schaltung von oben dann passen, und der verwendete Transistor? Die hab ich leider noch nicht bestellt. wegen fünf 4cent Teilen nochmal bestellen.. aber was solls ;-) mfg :)
> du hast richtig gedacht, 5x3 Grundfläche und 5 in der Höhe habe ich > geplant. > Finde ich besser als 4x4x4, weil man so auf der Frontseite (5x5) auch > evtl Schriftzeichen anzeigen lassen kann. Etwas wenig, normale character LCDs verwenden 5x7. > Deine Rechnung leutet mir ein, allerdings sind die gerechneten 195mA ja > nur die Ausnahme, wenn alle LEDs einer Ebene mal an sind. Und nachdem > als oberster Grenzwert 300mA angegeben sind, ist das doch noch > vertretbar. Ausnahme hin oder her, du musst grundsaetzlich dafuer dimensionieren. > Oder wo siehst du das Problem? Zeigt die Erfahrung, dass die Grenze > deutlich niedriger als 300mA liegt? In dem Bereich habe ich selbst noch keinen m8 betrieben. Probleme sehe ich hier v.a. weil du die ganze Leistung staendig schaltest, da sollte die Stromversorgung schon gut gepuffert sein. Ich koennte mir noch vorstellen, das der bei der Leistung recht warm wird. Am ausprobieren moechte ich dich nicht hindern. > Würde meine Schaltung von oben dann passen, und der verwendete > Transistor? Ja, bis auf das eben alle kathoden einer Ebene dran muessen und nicht nur eine LED. > Die hab ich leider noch nicht bestellt. wegen fünf 4cent Teilen nochmal > bestellen.. aber was solls ;-) Dann bestell lieber ein paar mehr... Sowas ist "Grundausstattung".
Andreas F. schrieb: > Etwas wenig, normale character LCDs verwenden 5x7. ja das ist richtig, aber es geht mit 5x5 schonmal "besser" als mit 4x4 Frontfläche ;-) Andreas F. schrieb: > In dem Bereich habe ich selbst noch keinen m8 betrieben. > Probleme sehe ich hier v.a. weil du die ganze Leistung staendig > schaltest, da sollte die Stromversorgung schon gut gepuffert sein. > Ich koennte mir noch vorstellen, das der bei der Leistung recht > warm wird. Am ausprobieren moechte ich dich nicht hindern. Um das Stromproblem zu beheben, könnte ich dann die Schaltung von oben insofern erweitern, dass die +5V nicht vom Pin des Mikrocontrollers kommen, sondern über einen weiteren npn (??) Transistor, der genauso angesteuert wird wie der andere aus dem Schaltplan oben?? Da könnte ich ja das selbe Modell benutzen oder? Andreas F. schrieb: > Dann bestell lieber ein paar mehr... Sowas ist "Grundausstattung". ist richtig ;-) danke mfg
Hi @all bin jetzt mit dem Aufbau meiner Platine zur Steuerung des LED-"cubes" beschäftigt. (s. Anhang) Platine noch nicht komplett fertig, aber großteils und Cube fertig zum anschließen. Habe jetzt bemerkt, dass ich zusätzlich nur die "low Power" Version des Atmega8 habe, nämlich den Atmega8L - 8PU. Hat dieser dann noch eine niedrigere Gesamtstrom- Grenze als die genannten 300mA??? Weil er ja nur die "low Power" Version ist??? Dann müsste ich die obige Platine auf jeden Fall noch um 15 Transistoren für die vertikalen "Säulen" erweitern, oder? Genügend Bauteile (Transistoren) habe ich auf Rat von Andreas auf jeden Fall. was meint ihr?? danke gruß Chris
C. S. schrieb: > Hat dieser dann noch eine niedrigere Gesamtstrom- Grenze als die > genannten 300mA??? Weil er ja nur die "low Power" Version ist??? > Dann müsste ich die obige Platine auf jeden Fall noch um 15 Transistoren > für die vertikalen "Säulen" erweitern, oder? ja, das Datenblatt das ich habe gilt zumindest für Atmega8(L). "low power" weil die Versorgungsspannung niedriger sein darf. Schau dir auch genau an auf welchen Ports du die 300mA ziehen darfst, da gibts eine Ausnahmeregel für PortC
Hi Thomas, danke für die Antwort. Ich denke bevor da irgendwas anbrennt (im wahrsten Sinne des Wortes) steuere ich nicht nur die 5Ebenen über Transistoren an, sondern auch entsprechend die 15 "Säulen". Ist zwar nervig zum Aufbauen, aber dann funktioniert es wenigstens ordentlich. Werde auch ein Bild des fertigen "Cubes" einstellen, wenn Interesse besteht. Noch eine Frage: Sollte ich für die Säulen eher pnp oder npn Transistoren verwenden?? Ich würde jetzt einfach analog wieder npn (BC 337 - 40) verwenden. gruß
ich hab den Schaltplan nicht im Kopf, aber wennst an der Kathode hängst mit Emitter Richtung Masse nimm den NPN, von der Anode aus mit Emitter gegen VCC den PNP.
hey Thomas habe deine Schaltung mal auf einem Steckbrett vorher aufgebaut. Allerdings hat es nicht wie gwünscht funktioniert. Die "Test-LED" leuchtete auch wenn beide Pins schnell nacheinander im Wechsel auf High und Low geschalten werden. Leuchten soll diese ja aber nur, wenn beide Pins gleichzeitig auf High stehen. Habe trotzdem mal einen npn Transistor verwendet (s. Anhang) und es funktioniert wie ich es geplant hatte. Ist die Schaltung korrekt? Und noch eine kleine Frage: Laut Beschreibung bei reichelt hat der Atmega 23 I/O Pins, 2 davon (Pin 9 und 10) sind bei mir bereits vom externen Quarz belegt. D.h. es wären noch 23-2 = 21 I/O Pins verfügbar. Allerdings wenn ich nachzähle komme ich nur auf 20? Kann man den reset Pin oder evtl den Aref Pin als I/O Pin verwenden?? ich würde diesen "21.Pin" nämlich genau noch benötigen ;-) habt ihr eine Idee?? mfg
C. S. schrieb: > Und noch eine kleine Frage: > Laut Beschreibung bei reichelt hat der Atmega 23 I/O Pins, > 2 davon (Pin 9 und 10) sind bei mir bereits vom externen Quarz belegt. > D.h. es wären noch 23-2 = 21 I/O Pins verfügbar. > Allerdings wenn ich nachzähle komme ich nur auf 20? Also der PortB geht von PB0..PB7, PortD geht von PD0..PD7, PortC aber nur von PC0..PC6, insgesamt 8+8+7=23 Pins. OK, Reichelt kann zählen (vorausgesetzt ich kann zählen), hast du vielleicht den Reset-Pin (PC6, Pin 1) nicht mitgezählt? > Kann man den reset Pin oder evtl den Aref Pin als I/O Pin verwenden?? > ich würde diesen "21.Pin" nämlich genau noch benötigen ;-) ah, da stehts eh! Ja kann man, dann brauchst aber einen parallel Programmer (weiß ich nicht ob dein Board das kann) um das Teil wieder neu zu programmieren. Ich würde eigentlich statt deinem Quarz einen externen Oszillator nehmen (findest zB bei Reichelt unter "Artikel-Nr.: OSZI 8,000000") und an den XTAL1 hängen, dann kannst den XTAL2 als IO Pin verwenden. Fuse Bits setzen nicht vergessen. Grüße aus Österreich!
hey mein LED Cube 5x5x3 ist jetzt fertig geworden und mit einer zunächst einfachen Muster-Abfolge bespielt. Bei Interesse ist das ganze auf Youtube zu betrachten: http://www.youtube.com/watch?v=jvTHHrJh-Ys Thomas Klima schrieb: > Ich würde eigentlich statt deinem Quarz einen externen Oszillator nehmen > (findest zB bei Reichelt unter "Artikel-Nr.: OSZI 8,000000") und an den > XTAL1 hängen, dann kannst den XTAL2 als IO Pin verwenden. Fuse Bits > setzen nicht vergessen. Gute Idee, werde ich demnächst machen, danke für den Tipp. Gruß Christian
Hey bin voll begeistert hiervon möchte mir auch einen LED Cube bauen am besten den gleichen. Hast du einen Schaltplan dafür? Mit freundlichen Grüßen Lexow
Hi Lexow, habe keinen fertigen Schaltplan dafür, könnte dir aber einen anfertigen, wenn du weiterhin Interesse hast. Wie groß soll dein LED-cube werden? Wenn es etwas größer werden darf, kann ich dir den Artikel hier empfehlen: http://www.mikrocontroller.net/articles/LED_cube Falls du lieber erstmal einen kleinen Cube oder einen "Prototypen" bauen willst, so wie mein Exemplar, dann meld dich nochmal, Schaltplan kann ich dir bei Bedarf machen ;) Gruß Christian
Hi, habe noch Programm und Schaltplan für einen 3^3-Cube also Wochenendspielerei, falls du interesse hast. Programmitert wurde das ganze in Assembler. Als Programmspeicher dient zZt der interne Flash, geplant war noch UART-Verbindung, ist aus akutem Zeit und Launemangel bisher allerdings noch nicht umgesetzt worden.
Hey Leute, Schaltplan ist im Prinzip nicht kompliziert für nen kleinen Cube. Ich habs folgendermaßen gemacht: Es geht mit Sicherheit eleganter ;-) Der Atmega8 ist wie üblich angeschlossen (habe ich weggelassen), dh. stabile +5V Versorgungsspannung,zb. durch 7805 Standartschaltung, 10k-Pull-up sowie 100N am Reset, 100N zwischen Vcc und GND, Quarz etc... Dann hat der Atmega8 im Prinzip noch 20 nutzbare I/O Pins. Für einen 5x5x3 Cube könnte die Belegung zb. folgendermaßen aussehen: PO-P4 "schaltet" die jeweiligen Kathoden der Ebenen alle gleichzeitig auf GND (über Transistor). Die restlichen 15Pins "schalten" die vertikal verbundenen Anoden einer Säule auf Vcc. Durch die Kombination einer Säule (Anode auf Vcc) und einer Ebene (Kathode auf GND) lässt sich jede beliebige LED ansteuern. Zu beachten ist, dass die Leds einer Säule jeweils einen passenden Vorwiderstand bekommen, und die Transistoren einen Basiswiderstand von ca. 1kOhm. Im Anhang noch der grobe Schaltplan (mein erster in Eagle :D, wie man sieht) und die Belegung der Säulen und Ebenen in meinem Cube. Zur Vollständigkeit habe ich noch meinen C-Code angehängt. Hier möchte ich nocheinmal darauf hinweisen, dass dieser Code primitivst ist und es viel eleganter und effizienter geht ;-) mfg
Hey Danke für alles Der Code sieht aber extrem Umfangreich aus ^^ Hast auch einen in Bascom? Ich werde mir das mal alles angucken und wens Probleme gibt meld ich mich :P Gruß Lexow
Jan Lexow schrieb: > Hey Danke für alles Kein Ding. Mir wurde hier auch schon oft geholfen. Zwar bin ich im Prinzip auch noch Anfänger, aber ich helf wo ich kann ;-) Jan Lexow schrieb: > Hast auch einen in Bascom? Leider nicht. Habe 0 Erfahrung mit Bascom. Jan Lexow schrieb: > Der Code sieht aber extrem Umfangreich aus ^^ Ja, ich sagte ja, dass der Code primitiv und unübersichtlich ist, kommentiert mit uninformativen Kommentaren (im Code). War jetzt auch nicht als Non-Plus-Ultra gedacht, sondern nur als "Testcode", falls du den Cube genau so aufbauen solltest wie ich. Jan Lexow schrieb: > Ich werde mir das mal alles angucken und wens Probleme gibt meld ich > mich :P Wär nett, wenn du mich auf dem laufenden hälst, wie es so läuft bei dir. Weitere Fragen auch gerne ;-) mfg Christian
Hi Kleiner Tipp von mir: Statt diese vielen lästigen Transistoren zu verlöten würde ich lieber ULN2803 (Treiber IC) einsetzen, damit kannst du jeweils 8 LEDS betreiben, scheint mir wesentlich einfacher. Vielleicht baue ich mir auch so ein Teil :) Gruss
Hat hier noch keiner an Charlieplexing gedacht? damit komme ich bei 21 genutzten Pins auf schlappe 21 * 20 = 420 LEDn. Siehe auch: http://en.wikipedia.org/wiki/Charlieplexing Beitrag "Charlieplexing Frequenz?" Beitrag "Charlieplexing mit PIC - wie den Strom erhöhen?" Soll mir bitte keiner mehr sagen er hätte für seine paar LEDn nicth genug Pins... ;) j0
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.