Entwickler-Ecke
Dateizugriff - USB HID
kabizolis - Mi 16.02.05 14:56
Titel: USB HID
hallo,
ich bin ein blutiger anfänger, was das programmieren mit delphi anbelangt...
ich bin auf ein problem gestossen, das ich von alleine nicht beweltigen kann. ich will eine art neue software für das gerät dacal library dc-101 schreiben, weil die offizielle software nicht den anforderungen unserer firma entspricht. ich habe mit dem programm bushound die hexwerte ausgelesen, die das gerät empfängt... (z.b. 80 0E 01 03 09 02 02). wie kann ich das jetzt mittels eines delphi-programms der device übermitteln?
gibt es da eine art den usb-port anzusprechen? ich habe 1 tag mit googlen verbracht und bin nicht schlauer geworden. es gibt programme, die ähnliches können aber diese erfüllen auch nicht das gesamte soll.
danke für eure antwort kabizolis
digi_c - Mi 16.02.05 21:53
Geräte werden unter Windows ausschließlich über ihre Treiber angesprochen.
Diese werden in das Dateisystem unsichtbar eingehängt und können wie Dateien behandelt werden.
Dazu benötigst du Kenntnisse im Umgang mit der Windows API(CreateFile(),DeviceIO(),..).
Schau am besten in die Win API Ecke dieses Forums oder such nach Schnittstellen,RS232,LPT.
Es gibt auch ein frisches Tutorial für den API Zugriff über RS232. Du mußt im Prinzip nur anstatt "COM1" den passenden Handler für dein USB Gerät finden.
Mich würde mal interessieren, was das für ein Teil ist :)
kabizolis - Fr 18.02.05 12:16
kann mir jemand sagen ob mir die Vendor-ID und die Product-ID in irgendeiner weise nützlich sein könnten?
SchelmVomElm - Fr 18.02.05 12:46
digi_c hat folgendes geschrieben: |
Du mußt im Prinzip nur anstatt "COM1" den passenden Handler für dein USB Gerät finden.
|
Das halte ich für ein Gerücht.
Gut der Thread Titel heißt USB HID das heißt, dass das Gerät ein Human Interface Device ist.
Die sind oft als vitueller Com Port implementiert. Wie z.B. Com3 bei einem Modem. Das könntest Du dann so ansprechen. Bloß was nützt Dir das? Hast Du denn den Befehlsatz für das Ding?
kabizolis - Fr 18.02.05 12:56
ja, das gerät kennt genau 3 funktionen...
nr 1 cd-heber senken....
nr 2 cd heber nach dem drehen heben
nr 3 drehe zu cd-fach nummer xy (in hex)
mehr kann die kiste nicht... besteht aus 2 motoren (heber + dreher)
SchelmVomElm - Fr 18.02.05 13:00
Du kannst ja mal einen Treiber für das Gerät installieren und gucken ob das 'nen Com Port installiert.
kabizolis - Fr 18.02.05 14:44
tut es nicht... :( aber gibt es irgendeine variante einen virtuellen com-port zu erzeugen? falls jemand das gerade weiss...
SchelmVomElm - Fr 18.02.05 15:34
Dann musst Du ein Human Device Interface im Gerätemanager haben.
Ich habe mal gehört, dass man die mit einer Jedi Komponente ansprechen kann.
Ob's wirklich geht, hängt wahrscheinlich vom verwendeten USB Chip ab...
kabizolis - Fr 18.02.05 16:44
es tut mir leid, aber ich bin wirklich ein anfänger.... aber ich hab' jetzt in letzer zeit sehr oft dir fehlermeldung erhalten, dass "JvHidControllerClass" nicht gefunden wurde.... muss ich da einen eintrag in einer library hinzufügen oder wie kommt das?
MatzeB - Do 06.10.05 12:49
Hi,
also ich bekomm den Fehler auch! Ist das eine Class die HID selbst erzeugt, oder muss da was im Package vom Robert Marquardt umkopiert oder ausgeführt werden?
Die Greenhorns halt :lol:
Bye
drstar - So 09.10.05 18:18
Hmm, dachte immer, ein HID wäre ein EINGABEGERÄT? Welchen Sinn sollte es also machen, auf ein Eingabegerät Daten auszugeben? Denke da an USB-Mäuse, -Tastaturen etc, mal abgesehen davon, daß i. d. R. Treiber mitgeliefert werden...
digi_c - So 09.10.05 21:59
Hast schon recht aber Human Interface Device ist eine recht abstrakte Beschreibung für Tasten,Scroller,... und die müssen sich ggF. auch anpassen (z.B. Numlock LED(o.k. das ist Tastaturbaustein;),Grafisches Touchpad,...) vermutlich kommt das auch von der Ableitung das zu einem Gerät nunmal immer geschrieben und gelesen werden kann :?
MatzeB - Fr 16.12.05 10:38
Also nach meinem Kenntnisstand ist HID nicht nur in einer Datenrichtung zu betreiben (seit USB 1.1) sondern man kann es als Standard-Control oder Interrupt-Kanal Transfer benutzen. Damit kann man also auch eine gewissen Datenübertragung realisieren, bloß wie, keine Ahnung und davon reichlich! :? Hat jemand da schon Erfahrungen und kann ein paar Tips für Kommunikation mit dem HID Treiber loslassen (WinAPI, oder??)?
Matze
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!