Defines | |
#define | USB_DEVICE_OPT_LOWSPEED (1 << 0) |
#define | USB_DEVICE_OPT_FULLSPEED (0 << 0) |
Enumerations | |
enum | USB_Device_ErrorCodes_t { DEVICE_ERROR_GetDescriptorNotHooked = 0 } |
Functions | |
static void | USB_Device_SendRemoteWakeup (void) |
static bool | USB_Device_IsRemoteWakeupSent (void) |
static bool | USB_Device_IsUSBSuspended (void) |
Variables | |
volatile bool | USB_IsSuspended |
uint8_t | USB_ConfigurationNumber |
bool | USB_RemoteWakeupEnabled |
bool | USB_CurrentlySelfPowered |
#define USB_DEVICE_OPT_FULLSPEED (0 << 0) |
Mask for the Options parameter of the USB_Init() function. This indicates that the USB interface should be initialized in full speed (12Mb/s) mode.
#define USB_DEVICE_OPT_LOWSPEED (1 << 0) |
Mask for the Options parameter of the USB_Init() function. This indicates that the USB interface should be initialized in low speed (1.5Mb/s) mode.
Restrictions apply on the number, size and type of endpoints which can be used when running in low speed mode -- refer to the USB 2.0 standard.
Enum for the ErrorCode parameter of the USB_DeviceError event.
DEVICE_ERROR_GetDescriptorNotHooked |
Indicates that the USB_GetDescriptor() method has not been hooked by the user application.
|
static bool USB_Device_IsRemoteWakeupSent | ( | void | ) | [inline, static] |
Indicates if a Remote Wakeup request is being sent to the host. This returns true if a remote wakeup is currently being sent, false otherwise.
This can be used in conjunction with the USB_Device_IsUSBSuspended() macro to determine if a sent RMWAKEUP request was accepted or rejected by the host.
static bool USB_Device_IsUSBSuspended | ( | void | ) | [inline, static] |
Indicates if the device is currently suspended by the host. Whilst suspended, the device is to enter a low power state until resumed by the host. No USB traffic to or from the device can occur (except for Remote Wakeup requests) during suspension by the host.
static void USB_Device_SendRemoteWakeup | ( | void | ) | [inline, static] |
Sends a Remote Wakeup request to the host. This signals to the host that the device should be taken out of suspended mode, and communications should resume.
Typically, this is implemented so that HID devices (mice, keyboards, etc.) can wake up the host computer when the host has suspended all USB devices to enter a low power state.
uint8_t USB_ConfigurationNumber |
Indicates the currently set configuration number of the device. USB devices may have several different configurations which the host can select between; this indicates the currently selected value, or 0 if no configuration has been selected.
If a device has only one single configuration, the token USE_SINGLE_DEVICE_CONFIGURATION may be defined in the project makefile and passed to the compiler using the -D switch. This optimize for a single configuration, saving a small amount of space in the resulting compiled binary.
Indicates if the device is currently being powered by its own power supply, rather than being powered by the host's USB supply. This flag should remain cleared if the device does not support self powered mode, as indicated in the device descriptors.
volatile bool USB_IsSuspended |
Indicates if the USB interface is currently suspended by the host when in device mode. When suspended, the device should consume minimal power, and cannot communicate to the host. If Remote Wakeup is supported by the device and USB_RemoteWakeupEnabled is true, suspension can be terminated by the device by issuing a Remote Wakeup request.
This variable should be treated as read-only in the user application, and never manually changed in value.
Indicates if the host is currently allowing the device to issue remote wakeup events. If this flag is cleared, the device should not issue remote wakeup events to the host.