Get Descriptor
Function codes URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE
Build routine UsbBuildGetDescriptorRequest
URB Structure _URB_CONTROL_DESCRIPTOR_REQUEST
Use this function to get any descriptor from a device. The
If you ask for a configuration descriptor, you also get all the associated interface, endpoint, and class– and vendor-defined descriptors.
Other Get/Set Descriptors
Function codes URB_FUNCTION_GET_DESCRIPTOR_FROM_ENDPOINT
URB_FUNCTION_SET_DESCRIPTOR_TO_ENDPOINT
URB_FUNCTION_SET_DESCRIPTOR_TO_OTHER
Build routine none available
URB Structure _URB_CONTROL_DESCRIPTOR_REQUEST
This function gets or sets other descriptors.
Get Status
Function codes URB_FUNCTION_GET_STATUS_FROM_DEVICE
URB_FUNCTION_GET_STATUS_FROM_INTERFACE
URB_FUNCTION_GET_STATUS_FROM_ENDPOINT
URB_FUNCTION_GET_STATUS_FROM_OTHER
Build routine UsbBuildGetStatusRequest
URB Structure _URB_CONTROL_GET_STATUS_REQUEST
This function gets a status word.
The device status word has self-powered and remote wakeup bits (USB_GETSTATUS_SELF_POWERED and USB_GETSTATUS_REMOTE_WAKEUP_ENABLED are the bit masks). The interface status currently has no bits defined. The endpoint status word has its bit zero set if the Halt feature has been set.
Select Configuration
Function codes URB_FUNCTION_SELECT_CONFIGURATION
Build routine USBD_CreateConfigurationRequestEx
UsbBuildSelectConfigurationRequest
URB Structure _URB_SELECT_CONFIGURATION
Use
If deselecting a configuration, use the simpler
Get Configuration
Function codes URB_FUNCTION_GET_CONFIGURATION
Build routine none available
URB Structure _URB_CONTROL_GET_CONFIGURATION_REQUEST
This function gets the current configuration descriptors.
Select Alternate Interface
Function codes URB_FUNCTION_SELECT_INTERFACE
Build routine UsbBuildSelectInterfaceRequest
URB Structure _URB_SELECT_INTERFACE
Use this URB function code to select an interface's alternate setting. Pass the configuration handle, the interface number, and the alternate setting.
Changing to an alternate interface setting discards any queued data on the interface endpoints.
Get Interface
Function codes URB_FUNCTION_GET_INTERFACE
Build routine none available
URB Structure _URB_CONTROL_GET_INTERFACE_REQUEST
This function gets the current alternate interface setting for an interface in the current configuration.
Reset Pipe
Function codes URB_FUNCTION_RESET_PIPE
Build routine none available
URB Structure _URB_HEADER
This function can clear a stall condition on the pipe with the given
Do Control Transfer
Function codes URB_FUNCTION_CONTROL_TRANSFER
Build routine none available
URB Structure _URB_CONTROL_TRANSFER
This function can transmit or receive data on a control pipe with the given
Do not use his function for transfers over the default pipe.
Do Bulk or Interrupt Transfer
Function codes URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER
Build routine UsbBuildInterruptOrBulkTransferRequest
URB Structure _URB_BULK_OR_INTERRUPT_TRANSFER
Use this function to transmit or receive data on a bulk pipe, or receive data on an interrupt pipe. Specify the pipe using the
Do Isochronous Transfer
Function codes URB_FUNCTION_ISOCH_TRANSFER
Build routine none available
URB Structure _URB_ISOCH_TRANSFER
Use this function to request an isochronous transfer. The
GET_ISO_URB_SIZE returns the number of bytes required to hold an isochronous request of the given number of packets.
If the START_ISO_TRANSFER_ASAP bit is set in
Cancel
Function codes URB_FUNCTION_ABORT_PIPE
Build routine none available
URB Structure _URB_PIPE_REQUEST
This function cancels all requests on the pipe with the given
Set/Clear Feature
Function codes URB_FUNCTION_SET_FEATURE_TO_DEVICE
URB_FUNCTION_SET_FEATURE_TO_INTERFACE
URB_FUNCTION_SET_FEATURE_TO_ENDPOINT
URB_FUNCTION_SET_FEATURE_TO_OTHER
URB_FUNCTION_CLEAR_FEATURE_TO_DEVICE
URB_FUNCTION_CLEAR_FEATURE_TO_INTERFACE URB_FUNCTION_CLEAR_FEATURE_TO_ENDPOINT
URB_FUNCTION_CLEAR_FEATURE_TO_OTHER
Build routine UsbBuildFeatureRequest
URB Structure _URB_CONTROL_FEATURE_REQUEST
This function sets or clears a feature, in a control transfer over the default pipe. Specify a feature code.
Vendor/Class
Function codes URB_FUNCTION_VENDOR_DEVICE
URB_FUNCTION_VENDOR_INTERFACE
URB_FUNCTION_VENDOR_ENDPOINT
URB_FUNCTION_VENDOR_OTHER
URB_FUNCTION_CLASS_DEVICE
URB_FUNCTION_CLASS_INTERFACE
URB_FUNCTION_CLASS_ENDPOINT
URB_FUNCTION_CLASS_OTHER
Build routine UsbBuildVendorRequest
URB Structure _URB_CONTROL_VENDOR_OR_CLASS_REQUEST
Use this function to issue a vendor or class-specific command to a device, interface, endpoint, or other device-defined target, in a control transfer over the default pipe.
The