lpcware

In LPC1768 change keil USBHID example for bulk transfer

Discussion created by lpcware Employee on Jun 15, 2016
Latest reply on Jun 15, 2016 by lpcware
Content originally posted in LPCWare by Amir Poursadegh on Wed Oct 28 22:55:48 MST 2015
I changed the keil USBHID example like http://www.keil.com/forum/21413/lpc1769-usbhid-example/ and I could send 64 bytes about each 1 ms

my changes is a little different

in demo.c and demo.h
U8 InReport[64]

U8 OutReport[64]

demo.c
void GetInReport(void) {

for(amiri=0;amiri<64;amiri++)
{
InReport[amiri]=amiri;
}
}

void SetOutReport(void) {
for(amiri=0;amiri<64;amiri++)
{
OutReport[amiri]=InReport[amiri]
}
}

hiduser.c
...
GetInReport();
for(amiri2=0;amiri2<64;amiri2++)
{
EP0Buf[amiri2]=InReport[amiri2];

}
break;

...

case HID_REPORT_INPUT;
for(amiri2=0;amiri2<64;amiri2)
{
OutReport[amiri2]=EP0Buf[amiri2];
}

usbuser.c

...
if(USB_Configuration) {
GetInReport();
USB_WriteEP(HID_EP_IN, &InReport[64],sizeof(InReport));
}
...
void USB_EndPoint1 (U32 event) {
...
USB_WriteEP(HID_EP_IN, &InReport[64],sizeof(InReport));
...
}

and I can receive 64 byte (0 to 63) in C# by libusb

which changes needed for bulk transfer and send multiple endpoints??. I want to reach 1Mbyte/s speed, I know it's possible but I don't know which changes is needed ...
can I use Isochronous transfer and send 1000 bytes per milisecond and reach this speed?which changes is nedd for this?

I would be so thankful if someone help me

Outcomes