English
Language : 

EFM32WG Datasheet, PDF (290/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
• USB_DIEPx_CTL.CNAK = 1
7. When the application clears the IN NAK bit, the core interrupts the application with a
USB_DIEPx_INT.INTKNTXFEMP. On this interrupt, the application enables the control IN endpoint
with a USB_DIEPx_TSIZ.XFERSIZE of 0 and a USB_DIEPx_TSIZ.PKTCNT of 1. This results in a
zero-length data packet for the status IN token on the USB.
8. At the end of the status IN phase, the core interrupts the application with a
USB_DIEPx_INT.XFERCOMPL interrupt.
Figure 15.20. Two-Stage Control Transfer
H ost
USB
D e v ice
Applicat ion
1
set up_ xac_t 1
3
set up_ xact_2
st at us_ xac_t 2
st at us_ xac_t 2
SET UP
8 bytes
A CK Lost
S ETUP
8 bytes
ACK
IN
NA K
IN
NAK
. I N(ST AT US )
8 bytes
ACK
Ct l- IN NAK = 1 Ct l- OUT NAK= 1
set up dat1a
RXFLVL
INTR
idle until intr
set up dat2a
set up dat1a
setup done
set up dat2a
set up dat1a
RINXTFRLVL
RXFLVL
4
INTR
5
rcv_out_ dat a
Cont rol IN NAK= 1
Cont rol OUT NAK= 1
idle until intr
rcv_out_ dat a
idle until intr
SIEnTtrUP
rcv_out_ dat a
idle until intr
Clear IN
INTKNINTXTRFEMP NAK
sts data rdy
proc_ set up_pkt
#2
set up_ in_ np_ pkt
8
XFEIRNCTORMPL
7
idle until intr
6
XFERSIZE = 0 byt es
PKTCNT = 1
EPENA = 1
15.4.4.2.2.4 Packet Read from FIFO in Slave Mode
This section describes how to read packets (OUT data and SETUP packets) from the receive FIFO in
Slave mode.
1. On catching a USB_GINTSTS.RXFLVL interrupt, the application must read the Receive Status Pop
register (USB_GRXSTSP).
2. The application can mask the USB_GINTSTS.RXFLVL interrupt by writing to
USB_GINTMSK.RXFLVL = 0, until it has read the packet from the receive FIFO.
3. If the received packet’s byte count is not 0, the byte count amount of data is popped from the receive
Data FIFO and stored in memory. If the received packet byte count is 0, no data is popped from the
Receive Data FIFO.
4. The receive FIFO’s packet status readout indicates one of the following.
5. Global OUT NAK Pattern: PKTSTS = Global OUT NAK, BCNT = 0x000, EPNUM = Dont Care (0x0),
DPID = Dont Care (0b00). This data indicates that the global OUT NAK bit has taken effect.
2013-05-08 - Wonder Gecko Family - d0233_Rev0.50
290
www.energymicro.com