Gast
#2361703
Hallo! Ich habe ein Problem, näheres erläutere ich gleich. Zuerst zum Vorhaben. Geplant ist eine 6+R Gang Handschaltung für eine Rennsimulation am PC. Wäre ja relativ einfach wenn man einfach ein altes Gamepad zerpflücken würde und die 6 Tasten daraus verwendet um die SChaltung zu realisieren. Leider Gottes ist das ein Projekt für den Tag der offenen Türe unserer Schule in Elektronik, und wir müssen das ganze über einen uC machen. Type dessen wäre ein Atmel AT89C51RD2 mit einer Seriellen Schnittstelle. An diesen Microcontroller ist die selbstgebaute Hardware der Gangschaltung angeschloßen. Der uC liest den Zustand der Schaltung aus und schickt den eingelegten Gang anschließend über die Serielle Schnittstelle und einen Serial2USB-Konverter an den PC(zb R für Rückwärts, N für Neutral, 1 für 1....) Nun war unsre ursprüngliche Idee die Daten der Seriellen Schnittstelle per C#-Tool auszulesen und mit der SendKey-Methoder der .Net Bibliothek als "Tastendruck" zu senden. Leider leider ist das Spiel (GTR Evolution,rFactor) ein DirectX Game und akzeptiert keinerlei Software-bedingte Eingaben. Es liest nur von Hardware. Damit fällt die C#-Lösung ins Wasser. Nun zu meiner Problemstellung: Auf dem PC habe ich nun einen emulierten COM-Port über den die Daten zum PC gelangen. Wie kann ich (oder kann man überhaupt) einen Treiber oder ein kleines Programm auf diesen COM-Port ansetzen das die Daten ganz einfach als Tastendruck eines Gamepads oder einer Tastatur interpretiert und somit als "richtige" Hardware erkannt wird und in jedem Spiel als Eingabegerät verwendet werden kann? Oder kennt jemand noch einen anderen Weg die Daten ins Spiel zu bringen? Eine kleiner erschwerniss ist noch das wir das Grund-Spiel NICHT verändern/umprogrammieren dürfen. Bitte um schnelle Hilfe! Lg