| CMSIS-Driver Version 2.02 Peripheral Interface for Middleware and Application Code

- CMSIS
- CORE
- Driver
- DSP
- RTOS API
- Pack
- SVD

- Main Page
- Usage and Description
- Reference

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs
Driver_USBH.h File Reference

## Data Structures

struct | ARM_USBH_PORT_STATE
| USB Host Port State. More...
struct | ARM_USBH_CAPABILITIES
| USB Host Driver Capabilities. More...
struct | ARM_DRIVER_USBH
| Access structure of USB Host Driver. More...
struct | ARM_USBH_HCI_CAPABILITIES
| USB Host HCI (OHCI/EHCI) Driver Capabilities. More...
struct | ARM_DRIVER_USBH_HCI
| Access structure of USB Host HCI (OHCI/EHCI) Driver. More...

## Macros

#define | ARM_USBH_API_VERSION ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
#define | ARM_USBH_EP_HANDLE ARM_USBH_PIPE_HANDLE /* Legacy name */
#define | ARM_USBH_PACKET_TOKEN_Pos 0
#define | ARM_USBH_PACKET_TOKEN_Msk (0x0FUL << ARM_USBH_PACKET_TOKEN_Pos)
#define | ARM_USBH_PACKET_SETUP (0x01UL << ARM_USBH_PACKET_TOKEN_Pos)
| SETUP Packet.
#define | ARM_USBH_PACKET_OUT (0x02UL << ARM_USBH_PACKET_TOKEN_Pos)
| OUT Packet.
#define | ARM_USBH_PACKET_IN (0x03UL << ARM_USBH_PACKET_TOKEN_Pos)
| IN Packet.
#define | ARM_USBH_PACKET_PING (0x04UL << ARM_USBH_PACKET_TOKEN_Pos)
| PING Packet.
#define | ARM_USBH_PACKET_DATA_Pos 4
#define | ARM_USBH_PACKET_DATA_Msk (0x0FUL << ARM_USBH_PACKET_DATA_Pos)
#define | ARM_USBH_PACKET_DATA0 (0x01UL << ARM_USBH_PACKET_DATA_Pos)
| DATA0 PID.
#define | ARM_USBH_PACKET_DATA1 (0x02UL << ARM_USBH_PACKET_DATA_Pos)
| DATA1 PID.
#define | ARM_USBH_PACKET_SPLIT_Pos 8
#define | ARM_USBH_PACKET_SPLIT_Msk (0x0FUL << ARM_USBH_PACKET_SPLIT_Pos)
#define | ARM_USBH_PACKET_SSPLIT (0x08UL << ARM_USBH_PACKET_SPLIT_Pos)
| SSPLIT Packet.
#define | ARM_USBH_PACKET_SSPLIT_S (0x09UL << ARM_USBH_PACKET_SPLIT_Pos)
| SSPLIT Packet: Data Start.
#define | ARM_USBH_PACKET_SSPLIT_E (0x0AUL << ARM_USBH_PACKET_SPLIT_Pos)
| SSPLIT Packet: Data End.
#define | ARM_USBH_PACKET_SSPLIT_S_E (0x0BUL << ARM_USBH_PACKET_SPLIT_Pos)
| SSPLIT Packet: Data All.
#define | ARM_USBH_PACKET_CSPLIT (0x0CUL << ARM_USBH_PACKET_SPLIT_Pos)
| CSPLIT Packet.
#define | ARM_USBH_PACKET_PRE (1UL << 12)
| PRE Token.
#define | ARM_USBH_EVENT_CONNECT (1UL << 0)
| USB Device Connected to Port.
#define | ARM_USBH_EVENT_DISCONNECT (1UL << 1)
| USB Device Disconnected from Port.
#define | ARM_USBH_EVENT_OVERCURRENT (1UL << 2)
| USB Device caused Overcurrent.
#define | ARM_USBH_EVENT_RESET (1UL << 3)
| USB Reset completed.
#define | ARM_USBH_EVENT_SUSPEND (1UL << 4)
| USB Suspend occurred.
#define | ARM_USBH_EVENT_RESUME (1UL << 5)
| USB Resume occurred.
#define | ARM_USBH_EVENT_REMOTE_WAKEUP (1UL << 6)
| USB Device activated Remote Wakeup.
#define | ARM_USBH_EVENT_TRANSFER_COMPLETE (1UL << 0)
| Transfer completed.
#define | ARM_USBH_EVENT_HANDSHAKE_NAK (1UL << 1)
| NAK Handshake received.
#define | ARM_USBH_EVENT_HANDSHAKE_NYET (1UL << 2)
| NYET Handshake received.
#define | ARM_USBH_EVENT_HANDSHAKE_MDATA (1UL << 3)
| MDATA Handshake received.
#define | ARM_USBH_EVENT_HANDSHAKE_STALL (1UL << 4)
| STALL Handshake received.
#define | ARM_USBH_EVENT_HANDSHAKE_ERR (1UL << 5)
| ERR Handshake received.
#define | ARM_USBH_EVENT_BUS_ERROR (1UL << 6)
| Bus Error detected.
#define | ARM_USBH_SignalEndpointEvent_t ARM_USBH_SignalPipeEvent_t /* Legacy name */

## Typedefs

typedef uint32_t | ARM_USBH_PIPE_HANDLE
| USB Host Pipe Handle.
typedef void(* | ARM_USBH_SignalPortEvent_t )(uint8_t port, uint32_t event)
| Pointer to ARM_USBH_SignalPortEvent : Signal Root HUB Port Event.
typedef void(* | ARM_USBH_SignalPipeEvent_t )(ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t event)
| Pointer to ARM_USBH_SignalPipeEvent : Signal Pipe Event.
typedef void(* | ARM_USBH_HCI_Interrupt_t )(void)
| Pointer to Interrupt Handler Routine.

## Macro Definition Documentation

#define ARM_USBH_API_VERSION ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */

#define ARM_USBH_EP_HANDLE ARM_USBH_PIPE_HANDLE /* Legacy name */

#define ARM_USBH_PACKET_DATA_Msk (0x0FUL << ARM_USBH_PACKET_DATA_Pos)

#define ARM_USBH_PACKET_DATA_Pos 4

#define ARM_USBH_PACKET_SPLIT_Msk (0x0FUL << ARM_USBH_PACKET_SPLIT_Pos)

#define ARM_USBH_PACKET_SPLIT_Pos 8

#define ARM_USBH_PACKET_TOKEN_Msk (0x0FUL << ARM_USBH_PACKET_TOKEN_Pos)

#define ARM_USBH_PACKET_TOKEN_Pos 0

#define ARM_USBH_SignalEndpointEvent_t ARM_USBH_SignalPipeEvent_t /* Legacy name */