4.3 Den Joystick betätigen

Jeder, der regelmäßig Videospiele spielt, sollte den Joystick gut kennen. Er wird normalerweise verwendet, um Charaktere zu bewegen oder den Bildschirm zu drehen.

Unsere Bewegungen können vom Joystick erkannt werden, der nach einem sehr einfachen Prinzip funktioniert. Er besteht aus zwei Potentiometern, die senkrecht zueinander stehen. Diese beiden Potentiometer messen den analogen Wert des Joysticks in vertikaler und horizontaler Richtung und erzeugen einen Wert (x,y) in einem planaren rechtwinkligen Koordinatensystem.

Dieses Set beinhaltet auch einen Joystick mit digitalem Eingang. Er wird aktiviert, wenn der Joystick gedrückt wird.

Benötigte Komponenten

Für dieses Projekt benötigen wir die folgenden Komponenten.

Es ist definitiv praktisch, ein komplettes Set zu kaufen, hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

LINK

3 in 1 Starter Kit

380+

3 in 1 Starter Kit

Sie können sie auch separat über die untenstehenden Links kaufen.

KOMPONENTENBESCHREIBUNG

KAUF-LINK

SunFounder R3 Platine

BUY

Breadboard

BUY

Jumper-Kabel

BUY

Widerstand

BUY

Joystick Modul

-

Schaltplan

../_images/circuit_5.3_joystick.png

Bemerkung

Der SW-Pin ist mit einem 10K Pull-up-Widerstand verbunden, um ein stabiles Hochpegelsignal am SW-Pin (Z-Achse) zu erhalten, wenn der Joystick nicht gedrückt ist; sonst befindet sich der SW in einem schwebenden Zustand, und der Ausgabewert kann zwischen 0/1 variieren.

Verkabelung

../_images/toggle_the_joystick_bb.jpg

Code

Bemerkung

  • Öffnen Sie die Datei 4.3.toggle_the_joystick.ino im Pfad 3in1-kit\basic_project\4.3.toggle_the_joystick.

  • Oder kopieren Sie diesen Code in die Arduino IDE.

  • Oder laden Sie den Code über den Arduino Web Editor hoch.

Öffnen Sie den seriellen Monitor, nachdem der Code erfolgreich hochgeladen wurde, um die x,y,z-Werte des Joysticks zu sehen.

  • Die Werte der x- und y-Achse sind analoge Werte, die von 0 bis 1023 variieren.

  • Die Z-Achse hat einen digitalen Wert mit einem Status von 1 oder 0 (wenn gedrückt, ist es 0).