I added the Isochronous to USBHost library. The Isochronous code based on the following. http://developer.mbed.org/users/va009039/code/USBHostC270_example/
Dependencies: FATFileSystem mbed-rtos
Fork of USBHost_AddIso by
Diff: USBHost/USBHost.cpp
- Revision:
- 31:271fcfd7cfc2
- Parent:
- 30:2851a9b2bbfb
- Child:
- 33:bf48dc2a4240
--- a/USBHost/USBHost.cpp Wed Apr 01 05:36:16 2015 +0000 +++ b/USBHost/USBHost.cpp Wed Sep 30 05:52:33 2015 +0000 @@ -397,32 +397,6 @@ } else { return; } -#if(1) /* Isochronous */ - if (addr != 0) { - uint8_t state; - volatile HCTD* tdList = NULL; - - //First we must reverse the list order and dequeue each TD - do { - volatile HCTD* td = (volatile HCTD*)addr; - addr = (uint32_t)td->nextTD; //Dequeue from physical list - td->nextTD = tdList; //Enqueue into reversed list - tdList = td; - } while(addr); - - while(tdList != NULL) { - volatile HCTD* td = tdList; - tdList = (volatile HCTD*)td->nextTD; //Dequeue element now as it could be modified below - if (!isTD((uint8_t*)td)) { // ITD? - HCITD* itd = (HCITD*)td; - IsochronousEp* ep = itd->ep; - if (ep) { - ep->irqWdhHandler(itd); - } - } - } - } -#endif message_t * usb_msg = mail_usb_event.alloc(); usb_msg->event_id = DEVICE_DISCONNECTED_EVENT;