All UC3 Sleep modes are described in the Power Manager chapter in
the specific UC3 data sheet. Sleep modes supported by USBB and USBC drivers are:
- USB IDLE state: the driver requires the USB clock, hence IDLE Sleep
mode is the lowest supported Sleep mode.
- USB SUSPEND state: the driver does not require the USB clock, but will
request the clock on USB wake-up. Hence, STATIC and STANDBY is supported.
- VBUS monitoring: used in USB Self-Power mode, allows the UC3 to go
down to STOP mode.
Table 1. Sleep Modes Supported in USB SUSPEND
State on UC3| USB Power Mode |
USB Speed Mode |
USB Clock
Start-up(1) |
Sleep
Mode Authorized |
| Bus and
self-powered |
LS, FS |
>10ms |
STANDBY |
| Bus and
self-powered |
HS |
>3ms |
STANDBY |
| Self-powered |
LS, FS |
<=10ms |
STOP |
| Self-powered |
HS |
<=3ms |
STOP |
| Bus
powered |
LS, FS |
<=10ms |
STATIC |
| Bus
powered |
HS |
<=3ms |
STATIC |
Note: (1) Often external oscillators
are used to generate the USB clock. The USB clock start-up timing will depend on the
oscillator start-up timing.
The UC3 family support the specified power limit (2.5mA) in USB SUSPEND
mode.
For any bus power device application, it is required to:
- Remove USB_CONFIG_ATTR_SELF_POWERED bit in USB_DEVICE_ATTR define from
conf_usb.h file.
- Use an external oscillator with a low start-up time.
This value is
specified in the board header by the BOARD_OSC0_STARTUP_US define. Be aware of start-up
time configuration options, specifically see the OSCCTRL0 register description in the
UC3 data sheets.
- Use an external Low Dropout (LDO) voltage regulator or similar, to
generate 3.3V for the UC3. When selecting this regulator, be sure its quiescent current
does not consume a too large of a proportion of the required 2.5mA maximum suspend
current.