Danke
LED Cube 3x3x3 leicht gemacht
Moderator: T.Hoffmann
Hast Du per Fuses den Chip auf 8MHz Takt gesetzt?
Also bei mir flimmert nichts (bei der 5x8 Säule ist es allerdings ein 5x Multiplex, so dass ich den Waitms auf 2 Millisekunden runtergesetzt habe um das Flimmern zu beheben) Beim Cube sollte aber der 5ms Wert ausreichen. Wobei es natürlich kein Problem ist, auch hier auf 2 Millisekunden runterzugehen und die Zeile:
For Dauer = 0 To 27
entsprechend anzupassen. Also um etwa gleiche Zeiten zu erhalten:
For Dauer = 0 To 70
...
Waitms 2
Die 'Blinkfrequenz' erhöht sich dann von etwa 66 Hz auf 166Hz. Da ist bestimmt kein Flimmern mehr erkennbar.
Also bei mir flimmert nichts (bei der 5x8 Säule ist es allerdings ein 5x Multiplex, so dass ich den Waitms auf 2 Millisekunden runtergesetzt habe um das Flimmern zu beheben) Beim Cube sollte aber der 5ms Wert ausreichen. Wobei es natürlich kein Problem ist, auch hier auf 2 Millisekunden runterzugehen und die Zeile:
For Dauer = 0 To 27
entsprechend anzupassen. Also um etwa gleiche Zeiten zu erhalten:
For Dauer = 0 To 70
...
Waitms 2
Die 'Blinkfrequenz' erhöht sich dann von etwa 66 Hz auf 166Hz. Da ist bestimmt kein Flimmern mehr erkennbar.
hey leute ich hab ein problem mit dem drauf spielen des codes auf dem attyni
und zwar nehm ich ein neuen attyni 2313 dann geht der code drauf zu spielen mit ponyprog wie folgt
fusses lesen. fusses schreiben wie hier im thread schon beschrieben.
anschliesend code schreiben.
will ich jetzt aber ein neuen code reinschreiben geht es nicht mehr nach dem selben prinzip.
wer kann mir hier weiter helfen.
und zwar nehm ich ein neuen attyni 2313 dann geht der code drauf zu spielen mit ponyprog wie folgt
fusses lesen. fusses schreiben wie hier im thread schon beschrieben.
anschliesend code schreiben.
will ich jetzt aber ein neuen code reinschreiben geht es nicht mehr nach dem selben prinzip.
wer kann mir hier weiter helfen.
Hallo bojans
welcome on board!
Ein wenig genauer bitte...
Was passiert (oder passiert nicht) beim Schreiben von neuem Code (die Fuses musst Du nicht nochmal setzen, außer Du hast die Taktrate im Bascom Cocde verändert)? Ggf. wären auch screenies der Fehlermeldungen (wenn es welche gibt) hilfreich. Kannst Du denn den Chip wenigstens noch lesen?
welcome on board!
Ein wenig genauer bitte...
Was passiert (oder passiert nicht) beim Schreiben von neuem Code (die Fuses musst Du nicht nochmal setzen, außer Du hast die Taktrate im Bascom Cocde verändert)? Ggf. wären auch screenies der Fehlermeldungen (wenn es welche gibt) hilfreich. Kannst Du denn den Chip wenigstens noch lesen?
diese reihenfolge gehe ich ab
im bascom habe ich nix verstellt an der frequenz. ledeglich nur die zeit für die bilder, bzw. die zeiwait zeit.
diese reihenfolge gehe ich ab
erst calibrieren
dann fusses lesen
dann fusses schreiben wie im bild
und dann code schreiben
ich kann auch den chip nicht erasen. total schon am verzweifeln
im bascom habe ich nix verstellt an der frequenz. ledeglich nur die zeit für die bilder, bzw. die zeiwait zeit.
diese reihenfolge gehe ich ab
erst calibrieren
dann fusses lesen
dann fusses schreiben wie im bild
und dann code schreiben
ich kann auch den chip nicht erasen. total schon am verzweifeln
Also wenn die Fuses NACH DEM LESEN wirklich so aussehen, wie auf Deinem zweiten Screenie, sollte eigentlich gar nichts mehr gehen. Weil da wäre alles gesetzt was nicht OK ist (externer Takt, Reset disabled...). Wenn der Chip noch funktioniert, dann bitte erst noch mal die Fuses lesen (die können dann nicht so aussehen), ggf. neu schreiben und noch mal LESEN. Solange die Fuses nach dem Lesen nicht so aussehen, wie auf dem von mir gezeigten Bildchen auf Seite zwei, macht es keinen Sinn irgendwas anderes zu versuchen.
ja jetzt habe ich auch die vermutung das ich irgend was fasches mit den fuses gemacht habe.
und egal wie ich die fuses schreibe beim lesen sind sie wie auf dem erste bild von mir.
wie kann ich am einfachsten den 2313 wieder beleben?
habe was von stk im net gelesen. doch das habe ich nicht. und ist auch zudem zu teuer.
und egal wie ich die fuses schreibe beim lesen sind sie wie auf dem erste bild von mir.
wie kann ich am einfachsten den 2313 wieder beleben?
habe was von stk im net gelesen. doch das habe ich nicht. und ist auch zudem zu teuer.
Hi,
Mit dem Stk würde es vieleicht gehen, aber ich würde mir einfach einen neun 2313 kaufen Sooo teuer sind die nun auch wieder nich...
Wenns dich tröstet ich hab auch schon 3x2313 und 2xMega8 geschrottet
mfg: Cool3000
Mit dem Stk würde es vieleicht gehen, aber ich würde mir einfach einen neun 2313 kaufen Sooo teuer sind die nun auch wieder nich...
Wenns dich tröstet ich hab auch schon 3x2313 und 2xMega8 geschrottet
mfg: Cool3000
oha geile sache! respekt! so einen cube bau ich mir als nächstes (wenn ich hiermit http://www.lumitronixforum.de/viewtopic.php?t=2950 ) fertig bin!
gruß
gruß
Tach,
also wenn man den cube nur 2x2x2 machen würde und 3mm Low Current Leds benutzen würde, bäuchte man dann auch die Transistoren oder kann man die weg lassen? Oder kann man die auch bei 3x3x3 in 3mm lowcurrent weglassen??
Ich denke nähmlich gerade an einen Cube für den schlüsselanhänger..
also wenn man den cube nur 2x2x2 machen würde und 3mm Low Current Leds benutzen würde, bäuchte man dann auch die Transistoren oder kann man die weg lassen? Oder kann man die auch bei 3x3x3 in 3mm lowcurrent weglassen??
Ich denke nähmlich gerade an einen Cube für den schlüsselanhänger..
hab das hinbekommen mit mein attiny2313
der attiny scheint in ordnung zu sein. nur wenn die led´s angeschlossen sind geht das nicht mit den fuses einstellen.
hab jetzt ohne led´s den code draufgespielt und es funktioniert fast einwandfrei.
und zwar. der cube macht ein durchlauf und dann ist es für ne weile ganz an. ca- 30 sek.-1min. und erst dann macht er den zweiten durchlauf. komisch
vieleicht kann mir jemand sagen was es sein könnte. in der *.bas habe ich nichts verändert
der attiny scheint in ordnung zu sein. nur wenn die led´s angeschlossen sind geht das nicht mit den fuses einstellen.
hab jetzt ohne led´s den code draufgespielt und es funktioniert fast einwandfrei.
und zwar. der cube macht ein durchlauf und dann ist es für ne weile ganz an. ca- 30 sek.-1min. und erst dann macht er den zweiten durchlauf. komisch
vieleicht kann mir jemand sagen was es sein könnte. in der *.bas habe ich nichts verändert
Hallo zusammen,
erst mal mein Lob, eine tolle Anleitung =)
Ich habe eine blöde Frage zu der Hardware, genauer zu den Transistoren. Leider kenne ich mich mit Elektronik nicht gut aus und verzweifle gerade an der Theorie.
Mein Problem liegt darin, dass ich einfach nicht verstehe, was die Transistoren für einen Zweck beim Cube erfüllen. Sie sollen es ermöglichen, mit wenig Strom von µC einen höheren Strom zu schalten, so viel ist mir klar. Aber bei drei Leds pro Pin ist doch durch das Multiplexing immer nur eine zur Zeit an, womit der µC mit 20mA belastet wird. 40mA ist - glaube ich - das Limit pro Pin, 200mA das Limit für den ganzen ATtiny2313. Da immer nur eine Led zur Zeit an ist (wenn auch sehr schnell hintereinander), wozu brauche ich dann die Transistoren. Und warum hängen die bei diesem Cube an den Kathoden? Müßten die nicht an den Anoden hängen, wobei die Leds den Strom dann direkt von der Stromversorgung ziehen und die Pins dies mit den Transistoren dann steuern?
Ich bin wirklich bereits am Verzweifeln... Ich würd mich sehr freuen, wenn mir jemand einen kleinen Theorie-Boost verpassen könnte
Viele Grüße
Michi
erst mal mein Lob, eine tolle Anleitung =)
Ich habe eine blöde Frage zu der Hardware, genauer zu den Transistoren. Leider kenne ich mich mit Elektronik nicht gut aus und verzweifle gerade an der Theorie.
Mein Problem liegt darin, dass ich einfach nicht verstehe, was die Transistoren für einen Zweck beim Cube erfüllen. Sie sollen es ermöglichen, mit wenig Strom von µC einen höheren Strom zu schalten, so viel ist mir klar. Aber bei drei Leds pro Pin ist doch durch das Multiplexing immer nur eine zur Zeit an, womit der µC mit 20mA belastet wird. 40mA ist - glaube ich - das Limit pro Pin, 200mA das Limit für den ganzen ATtiny2313. Da immer nur eine Led zur Zeit an ist (wenn auch sehr schnell hintereinander), wozu brauche ich dann die Transistoren. Und warum hängen die bei diesem Cube an den Kathoden? Müßten die nicht an den Anoden hängen, wobei die Leds den Strom dann direkt von der Stromversorgung ziehen und die Pins dies mit den Transistoren dann steuern?
Ich bin wirklich bereits am Verzweifeln... Ich würd mich sehr freuen, wenn mir jemand einen kleinen Theorie-Boost verpassen könnte
Viele Grüße
Michi
Die Transistoren hängen nicht an den Säulen, sondern an den Ebenen. Da über die Ebenen gemultiplext wird können dabei in einer Ebene bis zu 9 LEDs gleichzeitig an sein. Das macht dann 180mA was an einem Pin des Tiny nicht sehr schön ist.
(Ich spreche jetzt absichtlich nicht ganz korrekt um es mal zu verdeutlichen)
Dadurch, dass Die LED mit der Anode an den Säulen hängt kommt der Strom zu den LEDs vom Tiny selber, Durch den Transistor wird dann quasi das Tor aufgemacht mit dem der Strom von den LEDs wegfließt
(nicht 100% korrekte, aber anschauliche Erklärung Ende)
Viele Grüße
Fightclub
(Ich spreche jetzt absichtlich nicht ganz korrekt um es mal zu verdeutlichen)
Dadurch, dass Die LED mit der Anode an den Säulen hängt kommt der Strom zu den LEDs vom Tiny selber, Durch den Transistor wird dann quasi das Tor aufgemacht mit dem der Strom von den LEDs wegfließt
(nicht 100% korrekte, aber anschauliche Erklärung Ende)
Viele Grüße
Fightclub
Danke für die schnelle Antwort.
Bedeutet das, dass wenn ich den Cube so programmiere, dass er komplett gemultiplext wird, also auch in einer Ebene immer nur eine LED zur Zeit angesteuert wird, dass ich die Transistoren weglassen kann?
Bedeutet das, dass wenn ich den Cube so programmiere, dass er komplett gemultiplext wird, also auch in einer Ebene immer nur eine LED zur Zeit angesteuert wird, dass ich die Transistoren weglassen kann?
Um es mit Radio Eriwan zu sagen:
Ja, im Prinzip schon.
Aber Du musst dann schon sehr schnell multiplexen, damit es nicht flimmert und Du hast nur eine sehr geringe Lichtausbeute, weil ja jedes LED dann nur 1/27tel der Zeit (beim 3x3x3 Cube) leuchtet. Bei 2x2x2 ist es natürlich kein Problem, bei 4x4x4 nicht mehr sinnvoll machbar.
BTW: Was ist so 'schlimm' an den paar Transistoren???
Ja, im Prinzip schon.
Aber Du musst dann schon sehr schnell multiplexen, damit es nicht flimmert und Du hast nur eine sehr geringe Lichtausbeute, weil ja jedes LED dann nur 1/27tel der Zeit (beim 3x3x3 Cube) leuchtet. Bei 2x2x2 ist es natürlich kein Problem, bei 4x4x4 nicht mehr sinnvoll machbar.
BTW: Was ist so 'schlimm' an den paar Transistoren???
An den Transistoren ist nichts schlimm, ich will nur verstehen, was ich da baue.
Da ich verunsichert war, was die Transistoren genau machen hatte ich die Frage, ob es theoretisch nicht auch ohne funktionieren kann.
Wenn aber in den Ebenen auch mehrere Leds gleichzeitig leuchten sollen, dann ist mir klar, dass das ohne Transistoren nicht funktionieren kann.
Da ich verunsichert war, was die Transistoren genau machen hatte ich die Frage, ob es theoretisch nicht auch ohne funktionieren kann.
Wenn aber in den Ebenen auch mehrere Leds gleichzeitig leuchten sollen, dann ist mir klar, dass das ohne Transistoren nicht funktionieren kann.
Hi BoraxRe: LED Cube 3x3x3 leicht gemacht
Beitrag am Mi, 14.01.09, 16:27 (0 Bewertungen, 5 Sterne)
Bitte schön...
Saeule5x8_Mega8.bas ist der Bascom-code. Wie schon erwähnt, auf einen ATMega8 bezogen. Die 8 senkrechten (+) Pins der LEDs sind auf PortB geschaltet, die Ebenen (- Pins) auf PortC (über Transistoren). Kann aber auch leicht an Tiny2313 o.ä. µPs angepasst werden. Der Editor ist ähnlich wie der von Fightclub zu bedienen.
Zuerst mit 'Neue Datei' eine neue Datei anlegen oder eine öffnen (per Datei öffnen oder Doppelklick in der Liste). Ohne aktive Datei geht gar nichts.
Sobald was geändert wurde (LEDs ein/aus) kann/muss das Bild gespeichert werden. Das geschieht aber zunächst nur im Speicher - NICHT in der Datei. Neues Bild fügt an der aktuellen Position ein neues Bild ein (muss nicht am Ende sein). Hierbei wird das vorige Bild 'kopiert'. Beim Abspielen kann man die Geschwindigkeit einstellen.
WICHTIG: Datei speichern (auch mal 'zwischendurch'), sonst ist beim Beenden (egal ob freiwillig oder unfreiwillig also Absturz) nichts mehr da! Ich übernehme keinerlei Garantien jedweder Art...
Der Rest sollte halbwegs 'selbsterklärend' sein - einfach ausprobieren. Oder fragen.
Dateianhänge
Saeule5x8_Mega8.zip
(17.61 ) 30-mal heruntergeladen
Neuer Kommentar (Benutzernamen anzeigen)
Borax
wenn ich ne Säule mit 7x8 bauen möchte muss ich doch nur in der programmierung
For Ebene = 2 To 6 ' 5 Ebenen durchmultiplexen in
For Ebene = 2 To 8 '7 Ebenen durchmultiplexen
ändern oder?
Frage könntest du mir den Editor evtl. anpassen?
Mfg PortaLED
...For Ebene = 2 To 8 '7 Ebenen durchmultiplexen
Ja. In den Dateien müssen dann natürlich auch die 2 Bytes mit den 'Mustern' für die zwei zusätzlichen Ebenen vorhanden sein. Also pro 'Bild' 7 Bytes. Möglicherweise muss auch noch das Timing angepasst werden (könnte sonst flimmern).
Ob und wann ich dazu komme den Editor anzupassen möchte ich mich nicht festlegen. Ich schau es mir die nächsten Tage mal an, aber vor dem nächsten Wochenende wird das bestimmt nichts. Welche PORT-Pins hast Du für die zwei zusätzlichen Ebenen verwendet?
Ja. In den Dateien müssen dann natürlich auch die 2 Bytes mit den 'Mustern' für die zwei zusätzlichen Ebenen vorhanden sein. Also pro 'Bild' 7 Bytes. Möglicherweise muss auch noch das Timing angepasst werden (könnte sonst flimmern).
Ob und wann ich dazu komme den Editor anzupassen möchte ich mich nicht festlegen. Ich schau es mir die nächsten Tage mal an, aber vor dem nächsten Wochenende wird das bestimmt nichts. Welche PORT-Pins hast Du für die zwei zusätzlichen Ebenen verwendet?




