Datasheet

210
XMEGA B [DATASHEET]
8291B–AVR–01/2013
Multipacket transfer enables a data payload exceeding the maximum packet size of an endpoint to be transferred as
multiple packets without software intervention. This reduces the CPU intervention and the interrupts needed for USB
transfers.
For low-power operation, the USB module can put the microcontroller into any sleep mode when the USB bus is idle and
a suspend condition is given. Upon bus resumes, the USB module can wake up the microcontroller from any sleep
mode.
Figure 18-1. USB OUT transfer: data packet from host to USB device.
Figure 18-2. USB IN transfer: data packet from USB device to host after request from host.
18.3 Operation
This section gives an overview of the USB module operation during normal transactions. For general details on USB and
the USB protocol, please refer to http://www.usb.org and the USB specification documents.
Internal SRAM
USB
USB Endpoints
Configuration Table
USBEPPTR
USB
Buffers
ENDPOINT 1 DATA
ENDPOINT 2 DATA
ENDPOINT 3 DATA
D
A
T
A
0
D
A
T
A
0
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
BULK OUT
EPT 2
BULK OUT
EPT 3
BULK OUT
EPT 1
DP
DM
HOST
time
D
A
T
A
0
D
A
T
A
0
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
D
A
T
A
1
D
A
T
A
0
EPT 2EPT 3EPT 1
DP
DM
HOST
I
N
T
O
K
E
N
I
N
T
O
K
E
N
I
N
T
O
K
E
N
EPT 2 EPT 3 EPT 1
time
Internal SRAM
USB
USB Endpoints
Configuration Table
USBEPPTR
USB
Buffers
ENDPOINT 1 DATA
ENDPOINT 2 DATA
ENDPOINT 3 DATA
CPU