Modell-RC-Gameport-Adapter2

Modellflugzeugfernsteuerung ersetzt den Joystick
(Entwicklung eingestellt)


 PIC-Projekte , zurück , PIC-Prozessoren , Elektronik , Homepage

Der Gameportadapter1 hat sich im Einsatz bewährt, ist aber durch die Verwendung elektronischer Potis relativ teuer. Außerdem haben die Potis nur 100 mögliche Widerstandswerte. Dadurch ist dieser Adapter etwas grob in der Umsetzung der RC-Signale.
 
Stromlaufplan (verkleinert) Ein billigerer Adapter muss ohne elektronische Potis auskommen. Die Lösung könnte eine digitale Ansteuerung des Gameports mit variabler Zeitverzögerung sein.

Ich habe mit diesem Konzept zwar schon gute Ergebnisse, doch leider kämpfe ich z.Z. mit modernen Gameports, deren Konzept vom klassischen Gameport (Ne555-Schaltung) abweicht. Bei den in Soundkartenchips integrierten Gameports gab es einige Überraschungen, und ich hätte am Ende schon ganz gern eine universelle Lösung, die an allen Gameports funktioniert.

Funktion:
Das Port RA4 des PIC ist mit der Lehrer-Schüler-Buchse der Fernsteuerung verbunden, und wird benutzt, um die Impulse der Fernsteuerung auszumessen.

RB0 erkennt den Beginn einer Gameportabfrage und löst einen Interrupt aus. Mit zeitlicher Verzögerung von bis zu 1 ms werden dann die analogen Gameporteingänge über RB1..4 auf  +5V gelegt.
Die Feuerknöpfe werden direkt über RB5..7 und RA3 angesteuert.

Die RS-232-Schittstelle ist vorgesehen, um in der Endfassung der Software den Adapter über eine serielle Schnittstelle konfigurieren zu können. Es wäre eleganter, dazu die am Gameport ohnehin oftmals vorhandene MIDI-Schnittstelle zu nutzen  diese ist ja nichts anderes als eine serielle Schnittstelle mit 31.25 kBaud. Aber im Moment ist die normale COM-Schittstelle des PC der Favorit, die kenne ich besser.

Programmierung des PIC
Der PIC soll sich ohne spezielles Programmiergerät "brennen" lassen, um die Hemmschwelle für Nachbauer niedriger zu machen. Ein einfacher Zwischenstecker, der zwischen Gameportstecker des Adapters und der seriellen Schnittstelle gesteckt wird, macht den Adapter zum seriellen Brenner kompatibel.
Alternativ kann ein Quick and Dirty-Brenner oder ein Brenner0 in wenigen Minuten zusammengelötet werden.

Entwicklungsstand:
Den ersten Ansatz habe ich nach größeren Problemen ruhen lassen. Nicht nur die unterschiedlichen Gameportauslegungen machten mir das Leben schwer, obendrein gelang es nicht einen absolut ruhigen Joystick zu simulieren. Etwas zitterte immer, da sich auf die langsam ansteigende Ladekurve nicht genau synchronisieren lässt.

Ich verfolge z.Z. einen neuen Ansatz, der sich mit fast der gleichen Hardware (sogar noch ein paar Widerstände und Drähte weniger) realisieren lässt. Er verspricht bis zu 10-Bit-Auflösung für die Joysticks (1024 Stellungsschritte) und Kompatibilität zu allen Gameports unter Win95/98.


zurück , PIC-Prozessoren , Elektronik , Homepage