Pollin LED Cube

Gast #3438914
Lesenswert?

Hallo zusammen,

bei Pollin wird zur Zeit ein 3x3x3 LED Cube Bausatz angeboten:
http://www.pollin.de/shop/dt/NzY3OTgxOTk-/Bausaetze_Module/Bausaetze/Bausatz_LED_Cube.html

Eigentlich nichts besonderes aber zum Basteln ganz nett.
Also mal das Teil bestellt und zusammengebaut. Nur die Anleitung
für die LEDs zum Montieren ist besch.... gemacht. Da gibt es bessere
Lösungen. Einfach mal danach googlen.

Mit dem bereits fertig programmierten ATTiny2313 ist die Animation nicht 
gerade atemberaubend aber zum Testen reicht es.

Nun zum eigentlichen Thema:
Hauchen wir dem Tiny neues Leben ein. Also ein neues Programm in C
geschrieben um längere Animationen abspielen zu können. Leider kann man
mit dem Tiny natürlich keine großen Sprünge machen also war der nächste
Schritt, das Ganze doch in Assembler zu schreiben. Das Programm ist 
recht einfach und sollte auch kurz sein, damit mehr für die Animation 
Platz hat.

Im Anhang nun das Programm und das Hex File.
Das Programm spielt nur die Animation ab, mehr eigentlich nicht.
Der Taster hat die Funktion, die Animation zu bremsem.

Vielleicht hat noch jemand Ideen, wie man das Programm noch kürzer
bekommt oder auch eine Möglichkeit die Daten anderswo zu speichern.

Ernst
Angehängte Dateien:
Gast #3440183
Lesenswert?

Erschreckend welche Energieverschender die Entwickler von Pollin sind 
:-). Der ATtini läuft auch mit 3V. Die Transistoren kann man in 
Collektorschaltung verschalten und damit auf alle Widerstände 
verzichten. 0,7V fallen dann an den Transistoren ab und 0,3 Volt 
verkafren die Ports des ATtiniys. Bleiben 2,0 V für die LED. Einziger 
Nachteil man braucht ein Programmer der mit 3V klar kommt  :-). Der 
Pollinaufbau hat ca. 77% Verlustleistung. Der vereinfachte Aufbau nur 
33%.
Bitte nicht zu ernst nehmen  ;-)

LG Christof
Gast #3440518
Lesenswert?

Hallo Ernst  :-)
Am Code selbst holst du maximal 20 % raus. Das reicht dir wahrscheinlich 
nicht mal für ein neues Muster. Interesanter wird es, wenn man vieleicht 
eine Datensequenz opfert und eine Art “morphing“ code dazu schreibt.Der 
dann die Daten dreht oder ähnliches, dann kann es sehr vielseitig werden 
und sehr lange Sequenzen ergeben.
Lg Christof
Gast #3441389
Lesenswert?

Momentan werden ja 4 Bytes pro Bild verwendet die den kompletten
Cube darstellen.
Alternativ könnte man auch nur ein Byte verwenden und nur das Delta
anwenden. Aber bei den meisten Bildwechsel ändern sich aber mehr
als vier LED so das hier auch keine Ersparnis raus zu holen ist.
Gast #3452485
Lesenswert?

Mike schrieb:
> Ernst schrieb:
>> Auf der letzten Seite ist dann der Schaltplan enthalten.
> Ein Kondensator über der VCC des µC ist wohl dem Rotstift der
> Betriebswirtschaftler zum Opfer gefallen ;-(

hmm, ein Kondensator zwischen VCC und GND sollte doch reichen oder?
Gerade, weil das eigentlich für Batteriebetrieb gedacht ist.
Gast #3467607
Lesenswert?

Ist schon interessant, 93 Downloads aber keine Kommentare dazu.

Gut, es erfüllt ja auch seinen Zweck. Hier steht der Würfel am
Fensterbrett und blinkt vor sich hin. Einige Besucher können dem
Teil auch ewig zusehen. :-) Scheint eine einlullende Wirkung zu haben.

Aber sonst wird doch hier auch immer alles zerrissen.

Wie könnte man den Code noch kleiner machen oder alternativ die
Muster extern speichern?

Ernst
Gast #3589033
Lesenswert?

Hallo Ernst

Mich würde dein C-Code trozdem interessieren da ich mich momentan mit 
der ansteuerung von so einem Cube beschäftigen will, jedoch von 
Assambler keine Ahnung hab. Wäre dir sehr dankbar wenn du den auch noch 
mit hochladen könntest.

Lg
Johannes
Gast #3969910
Lesenswert?

Hallo,

ich hatte diesen Bausatz schon sehr lange im Keller herumliegen, aber 
jetzt hatte ich mal Zeit und Lust gehabt "das Dingen" aufzubauen.
In diesem zusammenhang habe ich auch Dein Programm entdeckt (Vielen Dank 
dafür) welches um einiges besser ist als das mitgelieferte.

Ich habe eigentlich nur eine kurz banale Frage, falls der Programm-Autor 
noch mitliest :

Ist das Programm für 8 MHz oder für 4 Mhz geschrieben ? Irgendwie habe 
ich das Gefühl, das bei 8 MHz die Animationen teilweise etwas zu 
schnell, aber dafür bei 4 MHz irgendwie etwas zu langsam ablaufen.

MfG Der Doctor
Gast #5696446
Lesenswert?

Hallo,

erstmal vielen Dank an Ernst für die tolle lange Sequenz! Viel besser 
als das Original!

Ich habe den Assembler Quelltext mal so angepasst, dass zwischen den 
Mustern per PWM ein fließender Übergang stattfindet (siehe Anhang). 
Damit finde ich es nochmal schöner anzusehen.
Solange der Taster gedrückt wird findet jetzt zum Vergleichen der harte 
Übergang statt.

Schöne Grüße,
Michi
Angehängte Dateien:
Gast #5696477
Lesenswert?

Klaus R. schrieb:
> ...du fummelst 2019 an einem 3x3 Cube in ASM rum?

Michi tut genau das, was in anderen Threads immer vorgebetet wird: Den 
ATTiny auf der unteren Ebene begreifen anstatt in C oder Basic zu 
fummeln.

Das ist genau der richtige Lernweg , mit einer überschaubaren 
Anwendung zu beginnen.

Man kann natürlich auch nicht ausschließen, dass er bereits Erfahrung 
mit ASM hat und das 'mal eben so' gemacht hat.
Beitrag #5696478 wurde von einem Moderator gelöscht.
Gast #5697528
Lesenswert?

Hallo,

ich hatte früher viele Jahre unter anderem PIC16 in Assembler 
programmiert, aber noch nie einen AVR. Aber ich hatte ja 
dankenswerterweise eine gute Codebasis von Ernst.

Den Pollin-Bausatz hat mein Kind gelötet. Aber da die originalen 
Sequenzen sehr kurz sind, bin ich sehr froh über das lange Muster von 
Ernst. Das nahtlose Dimmen zwischen zwei Mustern hat mich gereizt und 
auch irgendwie gefreut es hinbekommen zu haben.

(Hardy, die Unterseite ist bei mir verklebt, aber im Pollin Video sieht 
man sie bei 0:22.)

Schöne Grüße,
Michi
Gast #5697826
Lesenswert?

Hallo,

ich hab durch Zufall meinen Thread hier wieder entdeckt.
Schön, dass sich doch mal jemand noch Gedanken dazu gemacht hat.
Bei mir läuft der Cube ab der Adventszeit bis ins neue Jahr in der
bisherigen Version. Ich werde nun mal die neue Version testen und
dabei mal den 4313 verwenden. Da muss ich dann noch ein paar
Sequenzen basteln.

Natürlich kann man das auch in eine Hochsprache unter Windows
realisieren, aber die 150MB passen dann halt nicht in einen AVR. :-)

Ernst
Gast #5701825
Lesenswert?

Hallo,

eigentlich sind alle Informationen bei Pollin zu finden.

Bevor man sich hier die Mühe macht, die Platine selber zu ätzen,
kauft man sich einfach den Bausatz von Pollin.
Wenn man sich schon die Arbeit antun will, dann kann man auch ein
eigenes Layout machen und z.B eine ISP Buchse mit intergrieren.

@Michi: Ich hab mit dein Hex auf den Cube geladen, sieht doch ganz
nett aus. Allerdings scheint das Image für 1MHz ausgelegt zu sein?

Ernst
Angehängte Dateien:
Gast #5702091
Lesenswert?

Hallo Ernst,

der Bausatz ist bei Pollin "aktuell nicht lieferbar", scheint aber 
nachproduziert zu werden. Sonst steht da "nicht mehr lieferbar", wenn 
man sich einen Link irgendwo aufgehoben hat.

Ich habe naiv und aus Unkenntnis einen USBasp-Klon zum Programmieren 
gekauft gehabt, statt einen richtigen Atmel Programmer. Damit könnte ich 
zwar anscheinend zur Not auch die Fuse-Bits programmieren um die 
Frequenz einzustellen, aber wenn ich es richtig verstehe kann ich manche 
nicht zurücksetzen, da es kein High Voltage Programmer ist. Und da alles 
funktionierte habe ich keine Fuse Bits programmiert. Die Settings 
dürften also noch denen vom Original Pollin Chip entsprechen, den ich 
einfach umprogrammiert habe. Und ja, ich denke von meinen Beobachtungen 
her, dass es 1 MHz sein müssten.

Ich war es von meinen PIC Projekten so gewohnt dass ich dort über die 
__config Direktive die Fuse-Bits im Quelltext setzen kann und diese dann 
auch in der hex-Datei drin sind. Bei Atmel habe ich so eine Funktion 
nicht gefunden gehabt, es dann aber ja auch nicht zwingend gebraucht.

Mein Kind freut sich immer noch sehr über die lange Musterfolge von dir. 
Nochmals vielen Dank!

Schöne Grüße,
Michi
Gast #5702803
Lesenswert?

@Michi: Ich hab hier zufällig auch den USBasp zum Programmieren 
verwendet.
Allerdings hab ich die aktuelle Firmware installiert, was ohne zweiten 
Progger schwierig sein dürfte.

Mit avrdude und Burn-O-Mat läuft das relativ problemlos. Nur, wenn der 
Takt des Tinys auf 1MHz steht, kann der Progger nicht mehr einfach 
zugreifen. Jetzt muss man unter Optionen -B den Takt runtersetzen.
(Im Bild rechts unten)

Auch mit meinen 3€ Progger läuft das problemlos und auch das Programm 
läuft genauso gut wie unter einen 300€ Programmierer.
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren