Hallo!
ich habe angefangen mich mit USB bei PICs zu beschäftigen.
Habe früher ein Paar kleine Projekte mit V-USB von www.obdev.at gemacht.
Ich habe schon Bulk Transfer ausprobiert. Es klappt!
Ich benutze libusb und Mingw(GCC4.4.1), Windows XP Pro SP2
Im PC rufe ich die Funktion auf:
und im PIC erhalte ich die Daten:
1 | ...
|
2 | myHandle = USBGenRead(EP,(BYTE*)buffer, size); // Packet read
|
3 | ...
|
4 | if (!USBHandleBusy(myHandle))... // wait for ready
|
5 | ...
|
Soweit geht alles. Aber!
Wenn ich im PC eine Funktion für Control Transfer aufrufe:
1 | result = usb_control_msg(MyLibusbDeviceHandle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_OUT, 1, 0, 0, buffer, buffer_len, 5000);
|
dann kann ich die Daten im PIC nicht fangen. Welche Funktion soll ich
benutzen???
Habe alle Beispiele von Microchip durchgesucht und leider nichts
gefunden.
MfG aus Westerwald