URL: https://www.overclockers.at/coding-stuff/usb_programmierung_104110/page_1 - zur Vollversion wechseln!
Hi Leutz!
Ich stell mir immer die Frage wie man die USB Schnittstelle in C++ ansteuert. Ich will nämlich eine APP realisieren, von der ich Daten zu einem angeschlossenen Rechner übertragen kann. Muß ich mir erinen USB-Treiber schreiben oder gibt's in der WIN32API Funktionen die das erledigen?
Ist das so ähnlich wie bei der RS232 Schnittstelle also wie beim senden/empfangen über den COM-Port?
AFAIK gibts im Win32 API keine USB-Funktionen, und es geht auch nicht so einfach über Files. Auf welcher Hardware würde deine App laufen, weil du schreibst "angeschlossener Rechner"?
da sollte einiges zu finden sein
Ich hab gelesen dass man sog. endpipes für USB programmiern muss. (in einer eigenen VXD). Also den USBChip auf der Hardware selbst.
Ich will aber Daten zw. 2 computer übertragen.
Aber die frage ist: Wie stuere ich diesen Chip an und wie greife ich auf meinen selbst geschriebenen USBTreiber zu?
im tutorial-thread gibts imho einen link. du muesstest aber womöglich genau wissen, mit welchem usb-computer-2-computer-konverter chipsatz du es zu tun hast, bzw die api des herstellers verwenden.
oder, da diese konverter sowieso meist ein netzwerk simulieren: verwende ganz normale netzwerkprotokolle.
Wenn schon zwei Computer im Spiel sind, warum dann nicht gleich Ethernet?
plz, Geigerzeiger, nenne uns doch dein konkretes setup und sinn&zweck... die beschreibung läßt vermuten, daß du unnötig akrobatische tricks versucht, die man womöglich anders einfacher auch lösen kann.
naja... vielleicht hast du recht atrox.
habe nachgefragt, dass usb für so etwas nicht gebaut ist.
wenn ich's übrts ethernet probier, gehts wahrscheinlich einfacher.
Aber weisst du einiges über USB?
also ich hab usb bei meinem maturaprojekt verwendet, du musst da erst mal wissen was für einen chip du verwendest
entweder bietet der hersteller einen treiber für windows an oda du müsstest erm selba schreiben (i bin froh, dass i des net musste)
dann kannst du auf usb zugreifen mit den befehlen:
CreateFile() (handle erzeugen)
DeviceIOControl() (lese und schreibzugriffe)
CloseHandle() (handle löschen)
ob die anderen befehle (glaub writefile und readfile gehen weiß i net)
Aha! Ich kann also ein Handle auf den treiber setzten oder wie?
... nachdem du den treiber geschrieben oder bekommen hast. dann verwendest du die treiber-api.
jo, nur musst du natürlich auch informationen haben wo (adresse) die daten die du schreibst/liest sind
is dann e so ähnlich wie bei der rs232. brauch halt nur mehr informationen
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026