|
|||||||||||
Technical Support On-Line Manuals RL-ARM User's Guide (MDK v4) RL-RTX RL-FlashFS RL-TCPnet RL-CAN RL-USB RL-USB for USB Device Applications RL-USB Device Library RL-USB Device Features RL-USB Device Software Stack RL-USB Device Functions RL-USB Device Source Files RL-USB Device Configuration Audio Device (ADC) Options Communication Device (CDC) - ACM Options Human Interface Device (HID) Options Mass Storage Device (MSC) Options Create USB Device Applications Create ADC Applications Create CDC ACM Applications Create HID Applications Create MSC Applications Create Composite Applications Test USB Device Applications Compliance Tests Test HID Client Application RL-USB for USB Host Applications RL-USB Host Library RL-USB Host Features RL-USB Host Software Stack RL-USB Host Functions RL-USB Host Source Files RL-USB Host Configuration Host Controller Driver Selection Host Controller Driver Configuration Host Class Driver Selection Create USB Host Applications Create USB Host HID Applications HID_Kbd Example Create USB Host MSC Applications Create USB Host Class Driver RL-USB Host Constants and Structures Error constants Speed constants Transaction Packet Type constants Transaction Error Type constants USB Request Block structure (USBH_URB) Endpoint structure (USBH_EP) Driver Capabilites structure (USBH_HCI_CAP) Device Class Instance structure (USBH_DCI) Host Controller Instance structure (USBH_HCI) Host Controller Driver structure (USBH_HCD) USB Concepts USB Transfer Rates USB Network Basic Communication Model USB Protocol Control Transfer Interrupt Transfer Isochronous Transfer Bulk Transfer Descriptors Device Configuration Device Descriptor Configuration Descriptor Interface Descriptor Endpoint Descriptor Device Qualifier Descriptor Example Programs Library Reference Appendix |
USB Request Block structure (USBH_URB)USB Request Block (USBH_URB) structure represents communication structure between USB Host core and USB Host driver. typedef volatile struct { /* USB Request Block (URB) */ U8 *ptrDataBuffer; /* Pointer to Data Buffer */ U8 *ptrCurrentDataBuffer; /* Pointer to Current pos in Data Buff*/ U32 DataLength; /* Data Length */ U32 DataTransferred; /* Data Transferred */ union { U32 Parameters; /* Transfer Parameters */ struct { U32 PacketType : 4; /* Packet Type */ U32 ToggleBit : 1; /* Toggle Bit Value */ U32 ToggleForce : 1; /* Toggle Bit Forced (if cleared ToggleBit value is ignored) */ }; }; union { U32 Status; /* Status */ struct { U32 Submitted : 1; /* URB Submit Status */ U32 InProgress : 1; /* URB Processing In Progress Status */ U32 Cancelled : 1; /* URB Cancel Status */ U32 Completed : 1; /* URB Completition Status */ U32 Timeout : 1; /* URB Timeout Status */ U32 ResponsePacketType: 4; /* Response Packet Type */ U32 Reserved : 7; /* Reserved bits to reposition other */ U32 Error : 8; /* URB Error Status */ }; }; U32 NAKRetries; /* Number of NAK retries */ U32 TimeoutCount; /* Transaction Timeout Counter */ void (*CompletedCallback)(void);/* URB Completition Callback Function */ } USBH_URB; Explanation of USBH_URB structure elements:
| ||||||||||
|
Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.