Passiver Joystick mit 6 Schaltern auf einem Sensor-Eingang
Mit demselben Prinzip, das ich in
Martin's Bastelstube, Teil II
beschrieben habe, können wir uns eine Schaltung bauen, die einen passiven,
digitalen Joystick an einem einzigen Sensor-Eingang abfragt.
Einige von euch haben vielleicht noch aus der Homecomputer-Ära einen solchen
Joystick herumliegen, andere mögen zu der Zeit (Mitte bis Ende der 1980er Jahre)
noch nicht mal geboren gewesen sein. Macht nix, digitale Joysticks gibt's heute noch.
VORSICHT: Nicht alle Joysticks haben dieselbe Anschlussbelegung am Stecker!
Kontrolliert notfalls mit einem einfachen Durchgangsprüfer, welche Anschlussbelegung
euer Joystick hat. Für mein Beispiel nehmen wir mal den Standard für MSX-Joysticks
(siehe Hardware Book
-> Connectors -> 5.1 Joystick -> MSX Joystick):
Pin |
Signal |
Widerstand |
1 |
Vorwärts |
5.1 kOhm |
2 |
Rückwärts |
10 kOhm |
3 |
Links |
20 kOhm |
4 |
Rechts |
39 kOhm |
6 |
Feuer 1 |
82 kOhm |
7 |
Feuer 2 |
160 kOhm |
9 |
Masse |
zwecklos |
Hardware:
|
Wir besorgen uns den passenden Gegenstecker zum Joystick, damit wir nichts kaputt
schneiden müssen (9-poliger Sub-D Stecker mit Lötkelchen).
|
|
Wir können die Schaltung entweder in ein Sub-D Steckergehäuse einbauen (siehe
Foto links) oder in einen geeigneten LEGO-Stein (ich habe zum Beispiel ein
Seitenwand-Modul der LEGO-Ritterburg genommen, siehe Foto rechts).
Außerdem brauchen wir noch eine Kontaktplatte oder ein halbes LEGO-Anschlusskabel
(siehe Martin's Bastelstube, Teil I).
|
|
Die einzelnen Signale des Joysticks werden mit Vorwiderständen beschaltet
(die Widerstandswerte stehen oben in der Tabelle). Nehmt möglichst
Metallschichtwiderstände, die sind am genauesten (1% Toleranz) -- das verbessert
später die Messgenauigkeit.
Die Anschlussbeinchen der einzelnen Widerstände werden auf der einen Seite auf
ca. 7 mm gekürzt, dann kann man sie wunderbar direkt am Stecker anlöten.
Die anderen Enden aller Widerstände werden mit einem Silberdraht verbunden
(danach auch die überstehenden Enden abgekniffen) und zusammen auf einen Pol der
LEGO-Kontaktplatte gelegt, der Masse-Anschluss des Joysticks auf den anderen Pol
(Im Foto das orange Kabel).
Das war's schon, jetzt können wir uns der Software zuwenden.
Software:
Wir machen uns wieder eine Tabelle wie in
Martin's Bastelstube, Teil II,
nur diesmal mit sechs Spalten für alle Richtungs- und Feuertasten des Joysticks.
Wir brauchen zum Glück nicht alle 64 möglichen Schalterkombinationen
auszuprobieren, weil der Joystick nicht gleichzeitig links und rechts einen Kontakt
geben kann – genausowenig gleichzeitig vorwärts und rückwärts.
Mit den Schwellwerten aus der Tabelle bauen wir uns wieder einen Entscheidungsbaum in NQC,
der sich diesmal allerdings noch weiter verzweigen muss als mein Beispiel in
Martin's Bastelstube, Teil II.
Ein NQC-Codebeispiel hierzu findet ihr im
Programm rcx_message_joystick.nqc
in Funktion lies_joystick .
Jetzt könnt ihr mit dem Joystick euer LEGO-Modell steuern oder was auch immer euch an Ideen einfällt ...
Tschüß, euer Martin S.
|
E-mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!