Hallo zusammen, da ein Kumpel von mir meinte, das es möglich wäre über ein USB Kabel zwischen 2 PCS eine Datenverbindung herzustellen, wollte ich mich erst einmal bei Euch erkundigen. Ich hab mir auch schon mal den Bulk Transfer angeguckt, jedoch muß man erst einmal ein USB Device bei einem Bus aussuchen und diesen entsprechend konfigurieren "Die Endpunkte": /* the device's vendor and product id */ #define MY_VID 0x04d8 #define MY_PID 0x0011 /* the device's endpoints */ #define EP_IN 0x81 #define EP_OUT 0x01 #define BUF_SIZE 2 BUF_SIZE gibt in Bytes an, wie groß der Sende u. Empfangspuffer ist. Meine Frage: Wie groß kann dieser eigendlich sein? Ok, also hätte ich demzufolge bei einem Device ein Endpunkt für eingehenden und einen Endpunkt für den ausgehenden Datentransfer. Dann habe ich mir mal den Bulk-Transfer angeguckt: Zum Schreiben: if (usb_bulk_write(dev, EP_OUT, tmp, sizeof(tmp), 5000) != sizeof(tmp)) { printf("error: bulk write failed\n"); } dev = ist das USB Gerät EP_Out = ist der ausgehende Endpunkt tmp = sind die Daten die transferiert werden sollen siezof(tmp) = ist die Länge der Daten die transferiert werden sollen 5000 = ist die Zeit in Millesekunden, die maximal benötigt werden dürfen um die Daten zu transferieren. tmp kann ja jetzt nur 2 Byte lang sein Wurden die 2 Byte übertragen, dann ist diese Funktion erledigt. if (usb_bulk_read(dev, EP_IN, tmp1, sizeof(tmp), 5000) != sizeof(tmp)) { printf("error: bulk read failed\n"); } dev = ist das USB Gerät EP_IN = ist der eingehende Endpunkt tmp1 = ist der Puffer für eingehende Daten siezof(tmp) = ist die Länge vom Puffer der schon gefüllt ist 5000 = ist die Zeit in Millesekunden, die maximal benötigt werden dürfen um die Daten zu transferieren. sind die 2 Byte des Device Puffers gefüllt, ist diese Funktion erledigt. Ok...das würde doch bedeuten, das ich echt 2 USB Geräte mit einem USB Kabel verbinden u. Daten hin u. her schicken könnte. Natürlich müsste ich dafür noch ein Protokoll zur Flußkontrolle schreiben, aber das ist ja nicht das Problem. Cu Andy
> möglich wäre über ein USB Kabel zwischen 2 PCS eine Datenverbindung herzustellen
[...]
NACK. Bei USB redet immer ein einziger Host mit einem "Device" - und ein
PC ist immer Host. Bei den USB2USB Datenkabeln gibts etwas in der Mitte
das nach beiden Seiten ein "Device" ist. Den passenden Treiber findet
man auf der beiliegenden CD.
Und wenn PC1...ein USB Gerät nur zum schreiben und ein USB nur zum lesen hat? Das gleiche auch bei PC2, dann dürfte es doch funktionieren oder natürlich mit 2 USB Kabeln
PC1 lesen verbunden mit PC2 schreiben. PC1 schreiben verbunden mit PC2 lesen.
Andy schrieb: > Das gleiche auch bei PC2, dann dürfte es doch funktionieren oder > natürlich mit 2 USB Kabeln NEIN, lies dir erstmal die Grundlagenvon USB durch, kann kanst du dich mit der LIB beschäftigen.
Moin, geht bei Geräten mit USB OTG Ports und entsprechenden Treibern. Mit normalen USB Ports geht es nicht. Gruss, Tobi
Andy schrieb: > Und wenn PC1...ein USB Gerät nur zum schreiben und ein USB nur zum lesen > hat? Mit lesen und schreiben hat das nichts zu tun. Der PC ist kein USB-Gerät, sondern ein USB-Host, und da kann es wie bei den Highlandern immer nur einen geben.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.