Hallo zusammen,
möchte euch hier mal mein aktuelles "Wochenendprojekt" vorstellen: Simon Game - auch bekannt als "Senso ". Zur Zeit läuft es noch auf meinem Eval-Board auf einem ATmega16, soll aber später auf einen mega8 oder ähnliches auf einer kleinen runden Platine laufen. Dann kommen da natürlich auch farbige LEDs zum Einsatz.
Features:
- richtige Taste muss in einer bestimmten Zeit gedrückt werden
- bei falscher Taste wird neu gestartet
- Kette ist anfangs 10 Positionen lang
- bei korrekt durchlaufener Kette: Kette um 2 Positionen verlängert, weniger Zeit zum drücken, schnellers Abspielen.
Das Ganze ist in ein paar Stunden entstanden, ganz schön Kopfschmerzen hat mir dabei die Zufallsroutinge bereitet. Irgendwie ist RND() in Bascom der reinste Dreck. Ich behelfe mir nun mit einem evil Hack, indem ich den Zufallsgenerator mit einem zufälligen Timerwert initialisiere. Da der Timer relativ langsam läuft -ich brauche ihn für die Zeit zum Warten auf die richtige Taste- musste ich ein bissl Wartezeit in die Zufallsroutine einfügen. Funktioniert aber nun erstaunlich gut.
Der Code ist sicher alles andere als schön, aber das war ja auch nicht das Ziel. Für die die das Dingen vielleicht nachbasteln wollen, hier der Code: simon.bas.txt
Anregungen oder Erweiterungen können dann gerne hier gepostet werden.
6fI2MbDtIDM
Bild und Ton ist leider im Video etwas versetzt, real ist Ton und Aufleuchten der LED absolut synchron.
Gruß dgoersch
PS: Layout liefere ich nach, wenn ich mir eine Platine dafür erstellt habe.