USB Programmierung

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/usb_programmierung_104110/page_1 - zur Vollversion wechseln!


Geigerzeiger schrieb am 14.01.2004 um 17:51

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?


that schrieb am 14.01.2004 um 19:40

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"?


Smoldi schrieb am 14.01.2004 um 19:40

da sollte einiges zu finden sein


Geigerzeiger schrieb am 14.01.2004 um 20:40

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?


atrox schrieb am 14.01.2004 um 21:53

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.


that schrieb am 14.01.2004 um 22:06

Wenn schon zwei Computer im Spiel sind, warum dann nicht gleich Ethernet?


atrox schrieb am 14.01.2004 um 22:11

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.


Geigerzeiger schrieb am 15.01.2004 um 15:00

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?


Neo-=IuE=- schrieb am 17.01.2004 um 11:33

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)


Geigerzeiger schrieb am 17.01.2004 um 13:06

Aha! Ich kann also ein Handle auf den treiber setzten oder wie?


atrox schrieb am 17.01.2004 um 13:25

... nachdem du den treiber geschrieben oder bekommen hast. dann verwendest du die treiber-api.


Neo-=IuE=- schrieb am 18.01.2004 um 19:08

jo, nur musst du natürlich auch informationen haben wo (adresse) die daten die du schreibst/liest sind


Geigerzeiger schrieb am 18.01.2004 um 19:56

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