Samstag, 27. Februar 2016

OLED Joystick Game

In diesem Post geht es darum, wie man ein Spiel baut, welches das Zusammenspiel zwischen einem OLED Display und einem Joystick demonstriert. Dabei leuchtet zufällig Eine der vier Ecken des OLED Displays solange, bis der Joystick in diese Richtung geneigt wird, danach leuchtet die nächste Ecke. Ziel des Spiel ist es so viele Ecken, wie möglich, innerhalb von 30 Sekunden abzuarbeiten.

Die Hardware

Zum Anzeigen der Ecken und des Scores, benötigt man ein großes OLED Display (hier bei AZDelivery), zum Steuern des Spiels einen Joystick für den Arduino (hier auf Amazon). Außerdem benötigt man einen Arduino, beispielsweise einen billigen Arduino Nano Klon (hier bei AZDelivery), als Steuerungseinheit.

Wie man das OLED Display mit dem Arduino verbindet, habe ich bereits hier erklärt. Der Joystick benötigt vier Verbindungen: GND muss mit dem Ground verbunden werden und +5V mit den +5V des Arduino. Der Joystick besteht aus zwei Potentiometern, einem für die x-Achse und einem für die y-Achse. Über VRX kann man die x-Achse auslesen, über VRY die y-Achse.


Der Sketch

Zunächst einmal muss man einige Bibliotheken nachladen, und das OLED Display initialisieren. Das eigentliche Programm generiert über einen Zufallsgenerator eine Zahl zwischen 1 und 4 und lässt die entsprechende Ecke des Displays aufleuchten. Anschließend wartet das Programm durch die Funktion joystick() solange, bis der Joystick in die richtige Ecke geneigt wird.

Nach Ablauf der 30 Sekunden wird auf dem Display das Ergebnis angezeigt:

Der gesamte Sketch sieht so aus:

Es kann sein, dass der Joystick nicht in der Mitte bei 1023/2 gleich 511, sondern etwas daneben seine Normalposition hat. Diese kann man in der Funktion joystick() eingeben.


Keine Kommentare:

Kommentar veröffentlichen