PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] PC über COM Port steuern



NightWatcher
04.08.2004, 23:24
Hi,

eines vorweg.
Ich wusste nicht genau, wo ich posten sollte, deshalb habe ich es mal hier getan. Verschiebt mich, in den richtigen bereich, wenn ich hier falsch bin.

Nun aber mein Anliegen:
Ich befinde mich im Bereich CarPC, Ja genau, Computer im Auto ;)

ch habe hier meine Serienmäßige Lenkradfernbedienung, welches bei drücken, unterschiedlicher Tasten, einen unterschiedlichen hohen widerstand abgibt.

Nun brauche ich ein Modul und eine Software, um damit HotKeys anzusteuern.

Ich habe keinerlei Ahnung von Programmierung oder zusammenstellung solch einer Schaltung :(

Hoffe, ihr könnt mir helfen!!

Gleylancer
04.08.2004, 23:33
...der Com-Port besitzt meines Wissens nur 2 direkt Adressierbare Datenleitungen (die auch noch -13,-3;+3,+13V bipolar sind).
Éntweder du proggst dir einen Pic, der dir die Lenkradtastatur ausliest und diese an den Com-Port als Tx/Rx Signal moduliert, oder du gehst an die parallele Schnittstelle, wo du 8 Datenleitungen zur Verfügung hast.
In jedem Fall wird dir keiner ein fertiges Modul oder Programm liefern können (welches auch noch kostenlos ist). Schliesslich muss es ja noch Firmen geben, die damit ihr Geld verdienen

Gruß
Gleylancer

04.08.2004, 23:37
Mhmh, schade.

Ich wäre selbst bereit, ein paar Euros auf den Tisch zu legen.
Nur, ich hatte mal gelesen, das es selbst am COM-Port geht.

Nur wie vorhin schon erwähnt, ich habe nicht das nötige Fachwissen, um mir ne Schaltung aufzubauen, geschweige denn, mir ein Programm zu schreiben :(

DIe Widerstände von den einzelnen Tasten könnte ich noch messen, das wars dann aber schon ;) :/

sonic
05.08.2004, 00:08
Mhmh, schade.
Ich wäre selbst bereit, ein paar Euros auf den Tisch zu legen.
Nur, ich hatte mal gelesen, das es selbst am COM-Port geht.
Nur wie vorhin schon erwähnt, ich habe nicht das nötige Fachwissen, um mir ne Schaltung aufzubauen, geschweige denn, mir ein Programm zu schreiben :(


Ein paar Euros werden dich die Bauteile schon kosten...

Einfach so am ComPort wird es nicht funktionieren der ist halt digital und kann nur zwischen High/Low unterscheiden. verschiedene Spannungen kann der nicht auseinander halten...aber ganz ohne Schaltung löten und Programmieren wird es nicht gehen...



DIe Widerstände von den einzelnen Tasten könnte ich noch messen, das wars dann aber schon ;) :/

Mach das bitte mal, das könnte weiterhelfen..wieviele Tasten sind das eigentlich...

ich hab mir grad überlegt was der Sinn der Konstruktion sein soll. Höchstwahrscheinlich ist der Grund Datenleitungen zu sparen und die Störanfälligkeit....
Der Preis spielt bei den Herstellern ja auch eine große Rolle, also ist die Lösung wahrscheinlich günstiger als die gesparten Leitungen + Elektronik...

Ich tippe mal auf nen AD/Wandler, vielleicht bekommen wir das auch ohne Mikrocontroller hin...der entsprechende Wert liegt dann z.B. am parallelen Port an (serieller wird schwierig) und kann von dort ausgelesen werden...

Gruß, Sonic

05.08.2004, 00:33
Es handelt sich lediglich um 5 Tasten!!

Werde morgen mal die Werte messen :)

Da ich was löten muss ist mir auch klar ;)

Sorry, hatte mich dann undeutlich ausgedrückt.

Derjenige, der das verwirklicht hatte, dahhte auch COntroller, relais usw. benutzt, das weiß ich noch.
ABer eben über den COM Post.

Aber Parallel Port soll mir auch recht sein, wenn es denn läuft :)

05.08.2004, 13:34
Hi, da bin ich wieder :)

Meine Frage nun, was braucht ihr genau an messergebnissen?
Ohm, Ampere oder Volt?

*LEIDER KEINE AHNUNG HAB* :(

05.08.2004, 19:37
Hi,

was soll eigntlich gemacht werden? Möchtest du die Hotkeys simulieren?
Möchtest du vieleicht bestimmte Programme (Funktionen) damit steuern? Wenn ja, dann welche?

Wie du schon fragst, antworte ich auch: Apmere und Volt.

Wenn es um kleinere Ströme (Ampere) und Spannung (Volt) bis 5V handelt, dann kannst du auch direct über RS232-Adapter 5 AD-Wandler (vielleicht I2C) ansteuern. Dafür brauchst du kein µController mehr.

Aber PC-Seite musst du natürlich programmieren müssen. Die Daten von den Ad-Wandler müssen irgendwie gelesen und ausgewertet werden.

Dann um andere Programme steuern zu können, müsst du dafür eine Schnittstelle haben. Oder Hotkeys an diesen fremden Fenster senden. usw......


Programmierer

05.08.2004, 21:29
Hi,

also es geht um ein Programm, das hier sicherlich noch keiner kennt, da es eben nur für nen CarPC programmiert wird.

Von daher wäre es am sinnvollsten, wenn man HotKeys simulieren kann.
Wegen mir auch über PS/2 angeschlossen :)

05.08.2004, 21:36
Also,

Ich bekomme irgendwie nur unterschiedliche Messergebnisse, wenn ich mit Ohm dran gehen. Was bedeutet das?

Ohm steht doch für widerstand, oder sehe ich da was falsch?

Bastlwastl
07.08.2004, 19:53
Wiso nimmst du eigentlich nicht den Gameport?

Der hat analoge und digitale Eingänge.

Dass heißt:

Bei den digitalen Eingängen wird gemessen ob über einen Schalter ein widerstand hinzugeschaltet wurde oder nicht.
(Feuerknöpfe)

An den analogen Eingängen wird die Widerstandsveränderung gemessen.
(Steuerknüppel)

Mit dem analogen Eingang kann man auch den aktuellen Widerstandswert eines Potis oder thermowiderstand auswärten.

Dass dürfte doch was für dich sein.
Oder hat dein Rechner keinen Gameport?

mfg Bastlwastl

sonic
07.08.2004, 20:49
Also,
Ich bekomme irgendwie nur unterschiedliche Messergebnisse, wenn ich mit Ohm dran gehen. Was bedeutet das?
Ohm steht doch für widerstand, oder sehe ich da was falsch?

Bekommst du unterschiedliche Ergebnisse für eine Taste/Leitung oder wie meinst du das?

Ohm ist schon die Einheit für den Widerstand. Aber ich befürchte trotzdem das da ein digitales Signal rauskommt. Wenn du das im Ohm-Bereich misst bekommst du trotzdem unterschiedliche Werte für den Widerstand, liegt an der Messmethode...

Gruß, Sonic

11.08.2004, 21:26
Ne, Gameport wird wohl deaktiviert sein, da die OnBoard Soundkarte auch deaktiviert ist und meine andere Soundkarte keinen GamePort hat.

Aber wegen mir am Drucker Port, oder wo auch immer, solang es funzt :)

13.08.2004, 20:48
Wenn du den Paralellport verwenden willst musst du einen AD-Wandler baun oder eine andere Schaltung die die Daten auf die einzelnen pins verteilt.

Ich könnte dir nur sagen wie man Daten und Signale beim LPT ausgiebt, aber beim Einlesen der Daten kann ich dir leider nicht helfen.

Bei mir ist der Onboard Soundblaster deaktiviert und trotzdem funktioniert der Onboard-Gameport.
(Dafür funktioniert der Gameport der Soundkarte nicht.)

Musst do mal ausprobieren.

Es gibt bei Windows 2000 ein Systemprogramm dass dir alle Adressen anzeigt.
Schau mal ob da der Gameport aufscheint.

Wenn er dort nicht aufscheint, schau mal in der Motherboard-Beschreibung nach welchen Jumper (kleine schwarze Stecker auf dem Mainboard.) du umstecken mußt um den Gameport zu aktivieren.

Pass aber auf dass du mit einer Hand immer einen geerdeten Gegenstand(Gehause) berührst wenn du in Computer arbeitest (damit keine statische Elektrizität entsteht und deinen Rechner zerstöhrst.) und achte darauf dass du den richtigen Jumper erwischst.

Außer dem Analogeingang des Gameports oder dem LPT mit Signaldigitalisierung fällt mir nichts ein.
(Außer du verwendest einen USB-Baustein der dir die digitalisierten Signale so umwandelt dass du sie mit dem USB-Port einlesen kannst. Ist aber wesentlich schwehrer als mit dem Gameport.)

mfg Bastlwastl

BlueNature
13.08.2004, 21:05
Nimm dir ne C-Control und dann hast du einen RS232-Anschluss, einen AD-Eingang und kannst ein Programm schreiben das die Codes ausgibt. Du musst dir nur einen Spannungsteiler aufbauen mit dem Steuerelement am Lenkrad das zwischen 0V und 5V eine Spannung erzeugt. Dann misst du dir einfach den erzeugten Spannungswert jeder einzelnen Taste am angeschlossenen AD1-Eingang der C-Control und notierst ihn dir. Dann multiplizierst du alle Werte in Volt mit 51 und du hast deine Analogen Werte in der C-Control berechnet. Dann gehst du her und programmierst dir eine einfache Warteschleife die alle Tasten abfrägt. und bei keiner gültigen Taste immer weiterläuft.



Define Taste AD[1]
Define Taste0 = 0
Define Taste1 = 40
Define Taste2 = 50
Define Taste3 = 60
Define Taste4 = 70
Define Taste5 = 80
Define Toleranz = 5

#Loop
If Taste < 10 Then GoTo Loop
If Abs(Taste - Taste1) < Toleranz Then GoTo Sende1
If Abs(Taste - Taste2) < Toleranz Then GoTo Sende2
If Abs(Taste - Taste3) < Toleranz Then GoTo Sende3
If Abs(Taste - Taste4) < Toleranz Then GoTo Sende4
If Abs(Taste - Taste5) < Toleranz Then GoTo Sende5
GoTo Loop

#Sende1
Print "Taste 1"
GoTo Loop

#Sende2
Print "Taste 2"
GoTo Loop

#Sende3
Print "Taste 3"
GoTo Loop

#Sende4
Print "Taste 4"
GoTo Loop

#Sende5
Print "Taste 5"
GoTo Loop



Grüsse Wolfgang

14.08.2004, 09:02
Hallo Wolfgang,

alles schön und gut, nur hatte ich schonmal geschrieben, das ich weder von dem Programmieren noch von dem Bauen einer solchen Schaltung keine Ahnung habe.
Es wäre daher sehr nett, wenn du (oder jemand anderes) mir so ne Schaltung kritzeln kannst, inkl. Best-Nr. Bei Conrad. :)
Ich würde auch dafür bezahlen, wenn mir jamdn sowas komplett fertig heim schicken könnte.

Gruss Björn

BlueNature
14.08.2004, 13:22
@Gast

Wie soll denn jemand etwas bauen oder genau zeichnen wenn du selbst nicht weist was du für ein Signal von der Fernbedienung hast. Weist du wenigstens mit welcher Baudrate du am PC anbinden willst oder welche Codes übertragen werden müssen bei einer bestimmten Taste?

Grüsse BlueNature

03.01.2005, 14:28
wie kann man nur so dämlich sein?.... Ehrlich mal?

05.01.2005, 09:32
Also ne detailierte Aufgabenbeschreibung brauchts schon.

es wäre z.B. möglich einen ATMega zu nehmen, per AD-Wandler mit Interrupt
den Analogwert zu ermitteln, und das Ergebnis per UART über RS232 an den
COM zu schicken. Rechnerseitig brauchts dann aber ein Programm,
z.B. in VBasic, das den COM ausliest und dann entsprechende Unterprogramme
aufruft.

Nur. Wenn Dir einer sowas zusammenschweißt ist der ziemlich der dumme,
da Du NULL Ahnung hast was dabei raus kommen soll weil keine
elektronik Grundlagen vorhanden.
Ergo wirst Du nie zufrieden sein und folglich ständig nervige Reklamationen
haben.

Technisch ist's wie gesagt kein Problem