LED Würfel

Noch nie dagewesene Killer-Applikation für Atmel Mega 8 Controller

Nachdem mein STK500 für längere Zeit im Keller eingelagert war, überkam mich mal wieder die Lust auf ein einfaches Assembler Programm. Erfreulicherweise hatte ich alles zusammen eingepackt, so dass ich nicht lange nach den benötigten Adapterkabeln, Netzteilen und USB Serial Konverter suchen musste. Schnell noch das neue AVR Studio 5 downloaden, und nach nicht mal 4 Stunden Installation, unterbrochen durch diverse Windows und .NET Updates, konnte ich dann endlich Kontakt mit meinem STK 500 aufnehmen.

An dieser Stelle noch ein Tip für alle STK500 Besitzer, wenn mal aus unerklärlichen Gründen garnichts gelingen sollte:

Die SMD Taster haben die Lagerzeit im Keller nicht gut überstanden. Nur noch 3 davon funktionierten noch, die anderen waren im Inneren oxidiert und machten keinen Kontakt mehr. Erfreulicherweise kann man die kleine Metallabdeckung mit einer kleinen Klinge oder ähnlichem zerstörungsfrei abheben und das Innenleben der Taster einer gründlichen Reinigung und Korrosionsschutz mit Kontaktspray unterziehen.

Wie auch immer, ein erstes kleines Projekt mit dem AVR Studio 5 musste her, und ich entschied mich für einen einfachen LED Würfel (LED Dice) Sowas ist recht einfach zu programmieren, blinkt schön und gab es bisher noch nicht :)

Um die Sache auch optisch ein wenig interessant zu gestalten, habe ich mich für folgendes Funktionsprinzip entschieden: Wenn man einen Taster gedrückt hält, beginnt der Würfel laufen. Je länger man drückt, desto schneller dreht der Würfel. Lässt man den Taster wieder los, verlangsamt sich der Würfeldurchlauf, bis eine Zahl stabil angezeigt wird.

Der Zufall kommt dadurch ins Spiel, dass der Würfel sehr schnell durchläuft, so dass ein bewusstes steuern der Laufzeit und somit des Würfelergebnisses nicht möglich ist. Ausserdem sieht diese Würfelvariante recht nett aus.

Das Programm kann direkt im STK500 verwendet werden, ich hab einen Mega8 gewählt, um genügend Rechenleistung und Speicher für die komplexen Funktionen in Reserve zu haben, die dieses Projekt fordert :-)

Hier der Quellcode zum Download, die Funktionsweise sollte anhand der Kommentare leicht nachvollziehbar sein.

Download Quellcode

Konfiguration des STK500 für Mega8:

10Poliges Kabel von Port D auf LED Pfostenstecker 2Poliges Kabel von Port C0/1 auf SW0/1 6Poliges ISP Kabel auf GRÜNEN ISP Header Mega8 im grünen Sockel

Anzeige: