LED-Cube 8x8x8 (pink)

  • Müssen die auf der Platine so nah wie möglich an dem jeweiligen IC sitzen?

    Ja, sonst bringen sie nix...


    was ist bei Dir "viel Geld ausgeben"...? - der http://www.platinenbelichter.de macht sowas recht günstig... wobei, man hat hier ja sehr viele "gerade" Verbindungen, sollte also so auch ganz gut funktionieren - ich persönlich würde das aber dann (eben weil da viele Verbindungen schon "fertig" sind) auf Streifenraster machen statt auf Lochraster...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Hallo zusammen,


    ich habe immer noch das Problem mit den Fusebits. Auf der Seite AVR Fuse Calculator und mithilfe des Datenblatts Atmega 32 habe ich nun folgende Einstellungen als optimal gewählt.
    Es soll betrieben werden ein 16 MHz Quarz und JTAGEN aus. Der Hacken bei CKOPT soll laut Datenblatt bei 16 MHz aktiviert werden. Wie sieht das mit dem Hacken bei BODEN aus? Soll ich das auch mit setzen, damit er bei Unterspannung bei 2,7 V einen ordentlichen Reset durchführt? Und wenn ich SUT0 setze oder nicht, ändert sich nur die Start-up time von 4 ms auf 64 ms. Welche Einstellung ist sicherer?
    Ich möchte ungern einen weiteren Atmega32 zum Schweigen bringen... Bitte um Hilfe!


    Gruß


  • Hallo STASM,


    da Du einen ordentlichen Spannungsregler einsetzt, wird der Fall einer Unterspannung gar nicht auftreten.
    Es sollte daher völlig schnurz sein, was Du bei Brown-out angibst.


    Mit der Startup-time von 64 ms bist Du auf der sichereren Seite. Sollte aber ebenfalls nicht erheblich sein.


    Ein zerflashter AVR lässt sich übrigens durchaus retten.
    Dazu klemmt man den Quarz übergangsweise ab und legt einen externen Takt (z.B. von einem Quarzoszillator) an den entsprechenden Eingang. Dann kann man umflashen und alles ist wieder gut.
    Dan kann der abgeklemmte Quarz wieder angeklemmt werden und die Sache läuft.



    Viele Einstellungen der Fuses sind nicht wirklich bedeutend, wenn man eine zuverlässige Spannungsquelle verwendet. Häufigster Fehler ist halt eine Fehleinstellung bezüglich der Taktquelle, aber die lässt sich wie erwähnt auch fixen.


    Lese auch mal das hier:
    http://halvar.at/elektronik/kl…vr_kurs/fuse_lock_bits_2/

  • Vielen Dank Irrlicht!


    Nach einer so guten Beschreibung habe ich schon lange gesucht! Jetzt weiß ich was Sache ist... hoffentlich funktioniert es auch ;)
    Ich habe übrigens einen Quarzoszillator nach klick aufgebaut und den an XTAL1 angeschlossen..leider ohne Funktion. Ich weiß mittlerweile auch nicht, was mit dem Atmega32 los ist. Ist wohl ein Fall für die Mülltonne.


    Gruß

  • Ich weiß mittlerweile auch nicht, was mit dem Atmega32 los ist.


    Da gibt es noch zwei Fuse Bits die man nicht umstellen sollte.


    SPIEN -- damit kannst du das Programmierinterface abschalten
    und
    RSTDISBL -- damit kann man den Resetpin als normalen IO Pin benutzen und ohne Reset auch keine ISP Funktion.


    den Watchdog einzuschalten und nicht im Programm zu behandeln dürfte der Funktion auch nicht förderlich sein

  • Hmm, mit dem Oszillator kann eigentlich kaum was schief gehen.
    Kannst Du dessen Ausgangssignal überprüfen? Z.B. per Oszi oder Zählerkette?


    Und hast Du nach Anlegen des externen Taktes auch wirklich die Fuses neu geflasht?


    Anschließend mal ein absolutes Minimalprogramm in den AVR schieben, das nur einen Ausgang in einer Schleife permantent toggeln lässt, sonst nichts.
    Oder bekommst Du schon eine Fehlermeldung beim Proggen?


    Ich hatte mal das Prob, dass mein Progger partout nicht funzte, wenn der an einem (bestimmten) USB-Hub hing. Obwohl das sogar ein aktiver Hub war.
    Direkt am Rechnerport lief es. Auch über einen anderen Hub.


    Ansonsten: Weiß ja nicht, mit welchem Progger Du arbeitest, aber ich habe u.a. einen, der eine fixe Baudrate von 115.200 Baud an der seriellen Schnitte des PCs eingestellt haben will, sonst löppt der nicht.


    Habe auch einen AVR ISP MKII, der ja so ziemlich das Nonplusultra sein soll. Aber mein erster verschied schon am dritten Tag und der zweite macht auch immer wieder merkwürdigen Kummer, weswegen ich dann doch immer wieder den hier rauskrame:
    http://www.shop.display3000.co…dapter-seriell-rs232.html


    Der ist zwar viel langsamer, als der turboschnelle AVR ISP MKII, dafür funzt der problemlos, sofern man 115.200 Baud am PC eingestellt hat.



    Edit: Sehr guter Hinweis von Snowfly!
    Auf die Sache mit dem Watchdog falle ich auch immer wieder kurz herein. Der böse Befehl Waitms, womöglich in 'ner Schleife, ohne reset watchdog, verursacht dann permanentes Neustarten des Controllers.


    Waitms ist ja immer so verlockend, weil einfach, aber gerade in Verbindung mit aktivem Watchdog ein Problemkind (unelegant sowieso).

  • Da erlaube ich mir jetzt mal, ein Zitat von Dir umzumünzen: Die Anweisung "Waitms"

    ist böse! Ist das Werk von finsteren Mächten! Sie verursacht Schlafmangel, schlechte Laune und Eheprobleme!

    Begibst du dich auf diesen Pfad einmal, für immer wird beherrscht davon dein Schicksal."

    :D (SCNR)


    Der verlinkte Programmer ist aber ganz schön teuer - im Set mit dem USB/seriell-Adapter für 10 Euro (der dem hier "merkwürdig ähnlich" sieht :D) knapp 30 Euro zzgl. Versand, da kann man dann auch schon fast nen originalen Atmel kaufen - warum dieser nun ausgerechnet bei Dir Probleme macht, leider k.A. ?(


    was hier halt seltsam ist: Das mit Watchdog, SPIEN und RSTDISBL stimmt natürlich - aber jede halbwegs vernünftige Programmier-SW gibt da ne Warnung aus und fragt noch mal nach, wenn man da "Blödsinn" machen will...


    er listet ja im Startpost auch div. Clock-Einstellungen auf, nach derem aktivieren der AVR nicht mehr ansprechbar ist - also, ohne dass sonst was geändert wird...


    was hast Du denn eigentlich für nen Programmer, und welche SW dazu (war das jedes mal die selbe, im letzten Post sieht das Fenster total anders aus?), evtl. macht das Teil oder die SW ja einfach auch nur "Zicken" (in der Art, dass sie eben die Fuses falsch setzt)...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Wow! So viele Beiträge!


    Vielen Dank erstmal für die vielen Ratschläge...
    Also als Programme habe ich myAVR ProgTool V 1.37 und Bascom verwendet. Bei myAVR ProgTool habe ich in der Kartei "High Fuse" nur JTAG deaktiviert. Und bei "Low Fuse" einen der Ext. Crystal/Resonator... gewählt. Weiß leider nicht mehr genau welchen ich zum Schluß gewählt habe. Trotzdem müßte er mit einem 16 Mhz Quarz anlaufen...


    Als Programmer habe ich mySmartUSB light und AVR ISP MK2. Mit beiden habe ich jetzt keinen Zugriff mehr auf dem Atmega. Schon beim Auslesen der Fusebits kommt eine Fehlermeldung.
    Wenn ich aber bei der gleichen Schaltung einen neuen Atmega32 auslese geht das... an der Schaltung liegt es also nicht.

    Zitat

    Kannst Du dessen Ausgangssignal überprüfen? Z.B. per Oszi oder Zählerkette?

    Leider nicht... sonst hätte ich das schon getan. Habe den Quarzoszi aber gerade neu gekauft, dürfte Funktionieren...


    Pesi
    Das Bild sieht im letzen Post anders aus, weil es ein Screenshot von der verlinkten Seite ist...


    Ich werde morgen einen neuen Atmega32 mit den Einstellungen: Nur Haken bei: SPIEN, CKOPT, BOOTSZ1, BOOTSZ0 programmieren.
    Mal schauen ob er danach noch ansprechbar ist.


    Gruß

  • lies den Chip vorher aus und ändere dann nur die Stellen von denen du weisst was du machst :)

    Ah, genau, vergessen: Das ist bei manchen Brennprogrammen (war früher bei mir bei Ponyprog auch so) ganz wichtig: *Erst* Fusebits *lesen*, dann setzen, dann programmieren - ohne Lesen vorher kann Blödsinn raus kommen...


    Da hatte ich nicht mehr dran gedacht, weil AVR Studio (das ich nun schon länger benutze zum flashen) immer automatisch erst mal die Fuses liest...


    wie das bei Deinem Brennprogramm oder bei Bascom ist k.A., aber da mal drauf achten, dass die Fuses auf jeden Fall erst mal gelesen werden.

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • YES, YES, YES!
    Es hat funktioniert! Danke nochmal! Ich habe diesmal den AVR ISP MK2 genommen und in AVR Studio die Fuses ausgelesen, danach JTAG rausgenommen, CKOPT gesetzt und Crystal gewählt... danach programmiert.
    Am Ende ist für Low Byte: FF ; High Byte C9 rausgekommen. Erneutes Auslesen funktioniert auch einwandfrei...auch mit dem mySmart USB und myAVR Prog Tool.
    So, jetzt kann es endlich weitergehen... :)


    Gruß

  • Hallo,


    ich wollte mich mal wieder melden und meine Fortschritte mitteilen ...
    Die Platinen sind jetzt fertig layoutet, es sind leider zwei geworden. Auf eine habe ich alles nicht draufbekommen.
    Die Wannenstecker SV2 und SV3 sind auf den Platinen identisch. Das ist der Übergang zur zweiten Platine.
    SV1 auf Platine 1 wollte ich einfach für eventuelle Schalter freihalten ...


    Ist das Layout so in Ordnung und ich kann anfangen zu löten? :)


    Gruß



  • Hallo,


    ich habe eine Frage zu den Vorwiderständen ... für die einzelnen LEDs habe ich einen Versuch mit einem 74HC573 aufgebaut um den Strom zu messen. Da das Latch insgesamt nur 70 mA rausgeben kann, liegt der maximale Strom bei 8,75 mA für eine LED. Ich habe den Strom auf 8,5 mA gedreht und am Poti den Widerstand gemessen. 170 Ohm hatte er, ich würde nun ein 180 Ohm Widerstand wählen. Ist das Ok?


    Für die Mosfets (IRLZ34N) wollte ich 1 kOhm als Vorwiderstand nehmen, damit er sauber schalten kann. Ist das in Ordnung oder kann der ruhig kleiner sein?


    Gruß

  • kann ruhig kleiner sein - je kleiner, desto schneller schaltet der FET - üblich so 100 - 220 Ohm


    die 180 Ohm passen auch, wenn's ein paar mA mehr sind, ist das auch nicht schlimm, und das kommt ja auch nicht soo oft vor, dass in einer Ebene alle LEDs an sind...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Vielen Dank Pesi!


    Mittlerweile bin ich bei der Spannungsversorgung angelangt. Kann ich dieses Schaltnetzteil für den gesamten Cube nehmen? KLICK Ich habe das SNT gewählt, weil der 7805 mit 7,5 V weniger Abwärme produziert, anstatt mit 12 V. Für die anderen Komponenten reicht die Spannung auch aus.
    Grob überschlagen kommt der Cube auf ca. 5 A ... ist das richtig? 512 LEDs * 8,5 mA = 4,352 A.


    Gruß

  • Nee, stimmt nicht, da der Cube ja gemultiplext wird - es sind ja immer nur max. alle LEDs einer Ebene gleichzeitig an, also 64 Stück.


    macht dann also 64 x 8,5 mA = 0,544 A


    hast Du das mal ausprobiert, durch das Multiplexen werden die LEDs ja dunkler, ob da der Strom noch reicht, also sie damit noch hell genug sind...?

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Stimmt! Was schreibe ich denn da ...
    Dann habe ich eine ganz blöde Frage ... würde auch ein SNT mit 5 V für alles ausreichen? Der Atmega32, der Demultiplexer und die Latches benötigen genau 5 V Betriebsspannung.
    Vom SNT dürfte die Spannung eigentlich auch niemals weniger werden, also dürfte das theoretisch doch gehen?! Dann würde auch der 7805 wegfallen ... oder?
    Für die Variante würde ich dann das SNT nehmen. KLICK Ist das geeignet? Ein reines 5 V finde ich bei Reichelt nicht...


    Das mit dem Multiplexen würde ich gerne testen. Habe auch schon wie gesagt auf dem Breadboard eine kleine Schaltung mit einem Latch aufgebaut nur habe ich mich noch nicht in die Software reingearbeitet.
    Gibt es da was Simples damit ich das schnell ausprobieren kann? :)


    Gruß

  • ja, halt die LED mit Vorwiderstand (für 8,5 mA berechnet) an nen µC-pin, und schnell ne kleine SW machen, die den ganz schnell ein- und ausschaltet, dabei 1/8 der Zeit an...


    Ein reines 5 V finde ich bei Reichelt nicht...

    wie wär's mit dem...? ;) - klar, wenn Du nur 5 V brauchst, ist es ja am sinnvollsten, gleich ein 5-V-NT zu nehmen

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Danke dir! Irgendwie hab ich das nicht gesehen ... :)


    Theoretisch soll ja ab 50 Hz aufwärts ein Flimmern nicht mehr wahrgenommen werden ... das entspricht 20 ms. Bei mir flackert das aber noch ganz schön...bei gleicher An- und Aus Zeit.
    Ich hab das einfach mit waitms durchgeführt. Erst ab 8 ms ist kein flimmern mehr erkennbar...aber das auch wieder bei gleicher An- und Aus Zeit. Bei 1/8 der Zeit müssten die LEDs 8 ms an und 56 ms Aus sein, oder?
    Dann flackerts ohne Ende...was mache ich falsch? :)


    Gruß

  • Bei 1/8 der Zeit müssten die LEDs 8 ms an und 56 ms Aus sein, oder?

    8+56ms = 64 ms = 15,6 Herz


    Das ist also klar das das noch flimmert.
    Außer das flimmern ist deutlich sichtbarer dann hast du evtl. noch die Fuse falsch gesetzt.


    Was auch noch zu beachten ist das der Wait ms Befehl recht ungenau ist du kannst ja mal ne LED mit Waitms 1000 pulsen lassen und dann mal die anzahl der Pulse in einer minute zählen dann weißt du ob das soweit richtig ist.


    mfg
    Falo