4.1 - Den Joystick bedienen

Wenn du häufig Videospiele spielst, dürfte dir der Joystick bestens bekannt sein. Er wird normalerweise verwendet, um die Spielfigur zu bewegen, den Bildschirm zu drehen usw.

Das Prinzip hinter der Fähigkeit des Joysticks, dem Computer unsere Bewegungen mitzuteilen, ist recht simpel. Man kann sich den Joystick als Kombination aus zwei senkrecht zueinander stehenden Potentiometern vorstellen. Diese beiden Potentiometer messen den analogen Wert des Joysticks in vertikaler und horizontaler Richtung, was in einem Wert (x,y) in einem rechtwinkligen Koordinatensystem resultiert.

Der Joystick dieses Sets verfügt auch über einen digitalen Eingang, der aktiviert wird, wenn der Joystick gedrückt wird.

Benötigte Komponenten

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

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

Name

ARTIKEL IN DIESEM SET

KAUF-LINK

Kepler Kit

450+

Kepler Kit

Die Bauteile können auch einzeln über die folgenden Links erworben werden.

SN

KOMPONENTENBESCHREIBUNG

ANZAHL

KAUF-LINK

1

Raspberry Pi Pico W

1

BUY

2

Micro-USB-Kabel

1

3

Steckbrett

1

BUY

4

Jumperkabel

Mehrere

BUY

5

Widerstand

1(10KΩ)

BUY

6

Joystick-Modul

1

Schaltplan

sch_joystick

Der SW-Pin ist über einen 10K Pull-up-Widerstand angeschlossen. Der Grund dafür ist, ein stabiles hohes Signal am SW-Pin (Z-Achse) zu erhalten, wenn der Joystick nicht gedrückt wird; andernfalls befindet sich der SW in einem unbestimmten Zustand und der Ausgabewert kann zwischen 0/1 variieren.

Verdrahtung

wiring_joystick

Code

Bemerkung

  • Die Datei 4.1_toggle_the_joyostick.ino finden Sie im Pfad kepler-kit-main/arduino/4.1_toggle_the_joyostick.

  • Oder kopieren Sie den Code in die Arduino IDE.

  • Vergessen Sie nicht, das Board (Raspberry Pi Pico) und den richtigen Port auszuwählen, bevor Sie auf den Hochladen-Button klicken.

Nach dem Ausführen des Programms gibt die Shell die x,y,z-Werte des Joysticks aus.

  • Die Werte der x- und y-Achse sind analoge Werte, die zwischen 0 und 65535 variieren.

  • Die Z-Achse hat einen digitalen Wert mit einem Status von 1 oder 0.