English
Language : 

EFM32WG Datasheet, PDF (295/834 Pages) List of Unclassifed Manufacturers – The EFM32WG Wonder Gecko is the ideal choice for demanding 8-, 16-, and 32-bit energy sensitive applications.
...the world's most energy friendly microcontrollers
Figure 15.22. Slave Mode Bulk OUT Transaction
H ost
USB
D e v ice
Applicat io
n
in it_ ou t_ e p
1
2
w r _r e g ( USB_D OEPx _TSIZ )
OUT
3
512 bytes
4
ACK
5
x a c t_1
RXFLVL
USBP_KDTOCENPTx
_CTLNA
=0
K=1
INTR
w r _r e g ( USB_D OEPx _CTL)
6
idle until intr
XFERSIZE = 512 byt es
PKTCNT= 1
EPENA = 1
CNAK = 1
OUT
NAK
XFERSIZE= 0
r c v_ o u t_ p k t( )
7
XFEINRTCROMP
idle until intr
8
On new xfer
or RxFIFO
not empty
After a SetConfiguration/SetInterface command, the application initializes all OUT endpoints by setting
USB_DOEPx_CTL.CNAK = 1 and USB_DOEPx_CTL.EPENA = 1, and setting a suitable XFERSIZE
and PKTCNT in the USB_DOEPx_TSIZ register.
1. Host attempts to send data (OUT token) to an endpoint.
2. When the core receives the OUT token on the USB, it stores the packet in the RxFIFO because space
is available there.
3. After writing the complete packet in the RxFIFO, the core then asserts the USB_GINTSTS.RXFLVL
interrupt.
4. On receiving the PKTCNT number of USB packets, the core sets the NAK bit for this endpoint
internally to prevent it from receiving any more packets.
5. The application processes the interrupt and reads the data from the RxFIFO.
6. When the application has read all the data (equivalent to XFERSIZE), the core generates a
USB_DOEPx_INT.XFERCOMPL interrupt.
7. The application processes the interrupt and uses the setting of the USB_DOEPx_INT.XFERCOMPL
interrupt bit to determine that the intended transfer is complete.
15.4.4.2.2.9 Generic Isochronous OUT Data Transfer in DMA and Slave Modes
To initialize the core after power-on reset, the application must follow the sequence in Overview:
Programming the Core (p. 246) . Before it can communicate with the host, it must initialize an endpoint
as described in Endpoint Initialization (p. 281) . See Packet Read from FIFO in Slave Mode (p. 290) .
This section describes a regular isochronous OUT data transfer.
Application Requirements:
1. All the application requirements for non-isochronous OUT data transfers also apply to isochronous
OUT data transfers
2. For isochronous OUT data transfers, the Transfer Size and Packet Count fields must always be set
to the number of maximum-packet-size packets that can be received in a single frame and no more.
Isochronous OUT data transfers cannot span more than 1 frame.
• 1 <= packet count[epnum] <= 3
2013-05-08 - Wonder Gecko Family - d0233_Rev0.50
295
www.energymicro.com