====== Setup请求结构体 ====== ---- ^ Offset ^ Field ^ Size ^ Type ^ Description ^ | 0 | bmRequestType | 1 | Bitmap | **D[7] : Data transfer direction * The value of this bit is ignored when wLength is zero** \\ 0b = Host-to-device\\ 1b = Device-to-host\\ **D[6:5] : Type of request**\\ 00b = Standard\\ 01b = Class\\ 10b = Vendor\\ 11b = Reserved\\ **D[4:0] : Recipient**\\ 00000b = Device\\ 00001b = Interface\\ 00010b = Endpoint\\ 00011b = Other\\ 00100b to 11111b = Reserved | | 1 | bRequest | 1 | Value | Specific request | | 2 | wValue | 2 | Value | Word-sized field the may (or may not) serve as a parameter to the request, depending on the specific request. | | 4 | wIndex | 2 | Index or offset | Word-sized field that may (or may not) serve as a parameter to the request, depending on the specific request. Typically this field holds an index or an offset value. | | 6 | wLength | 1 | Count | Number of bytes to transfer if there is a DATA stage.\\ * If this field is non-zero, and bmRequestType indicates a transfer from device-to-host, then the device must never return more than wLength bytes of data. However, a device may return less.\\ * If this field is non-zero, and the bmRequestType indicates a transfer from host-to-device, then the host must send exactly wLength bytes of data. If the host sends more than wLength bytes, the behavior of the device is undefined.Number of bytes to transfer if there is a DATA stage. | ^ bRequest ^ Value ^ | GET_STATUS | 0 | | CLEAR_FEATURE | 1 | | Reserved | 2 | | SET_FEATURE | 3 | | Reserved | 4 | | SET_ADDRESS | 5 | | GET_DESCRIPTOR | 6 | | SET_DESCRIPTOR | 7 | | GET_CONFIGURATION | 8 | | SET_CONFIGURATION | 9 | | GET_INTERFACE | 10 | | SET_INTERFACE | 11 | | SYNC_FRAME | 12 | Set Interface Request Values For Audio Class ^Offset ^Field ^Size ^Value ^Description^ |0 |bmRequestType |1 |0x01 |D7: 0 = Host to Device.\\ D6..5: 00 = Standard Request.\\ D4..0: 00001 = Recipient is interface.| |1 |bRequest |1 |0x0B |SET_INTERFACE.| |2 |wValue |2 |0x0000 or 0x0001|0x00 is zero bandwidth alternate setting.\\ 0x01 is normal isochronous operation.| |4 |wIndex |2 |0x0001 or 0x0002 |Interface number of one of the AudioStreaming interfaces.| |6 |wLength |2 |0x0000 |No Parameter Block|