English
Language : 

EFM32WG Datasheet, PDF (301/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
• The last OUT data packet written to the receive FIFO is a short packet (0 < packet size < maximum
packet size).
8. When the DMA pops this entry (OUT Data Transfer Completed), a Transfer Completed interrupt is
generated for the endpoint or the endpoint enable is cleared.
9. OUT data packets received with Bad Data CRC or any packet error are flushed from the receive FIFO
automatically.
• In these two cases, the packet count and transfer size registers are not decremented because no
data is written to the receive FIFO.
Figure 15.24. Isochronous OUT Core Internal Flow for Periodic Transfer Interrupt Feature
START
If (USB_DOEPx_CTL.CNAK = 0b1) & &
(USB_DOEPx_CTL.EPENA = 0b1) & &
(DCTL.IGNRFRMNUM = 0b1) & &
NO
A
OUT Token From Host
YES
Che ck RXFifo Spa ce
Available
NO
YES
NOTE
1.
Core w ill w rit e da t a t o only DW ORD Aligne d a ddre sse s
2.
Cor e w ill n ot t a g Pe r iod ic OUT Pa( cmkiectrs)o w iftrha m e n u m b e r a n d PID
3 . An y Sh or t Pa(cSkPe t)
Re ce ive d w ill ge ne ra t e Xfe rCom ple t e Int e rrupt
including zero lengt h packet
4.
Packet Drop due t o unAvailabilit y of Space in RxFifo w ill generat e
X f e r Com p le t e Im m e.d ia t e ly
5.
Pkt Drop due t o EndPoint be ing disa ble d w ill ge ne ra t e Xfe rCom ple t e a t
En d of p e r iod ic Fr a m e .in t e r va l
NO
PKt Size= = M a xPk t Size
Disable endpoint
YES
Receive Pkt and St ore in RXFifo
Pkt Cnt= Pkt Cnt-1
NO
Received Short Packet
Pkt Cnt= Pkt Cn-t 1
DMA Pop RxFifo
XferSize= XferSiz-e MaxPkt Size
DMA Pop RxFifo
XferSize= XferSiz-e Act Pkt Size
If Pk t Cn=t=0 & &
X f e r Siz=e =0
NO A NO
YES
YES
USB_DOEPx_INT.XFERCOMPL = 1
If En d Of Pe r F&r I&n t
ISOC Out Packet Naked
YES
Disable endpoint
return
15.4.4.2.2.12 Incomplete Isochronous OUT Data Transfers 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 the application programming sequence when isochronous OUT data packets are
dropped inside the core.
Internal Data Flow
1. For isochronous OUT endpoints, the USB_DOEPx_INT.XFERCOMPL interrupt possibly is not always
asserted. If the core drops isochronous OUT data packets, the application could fail to detect the
USB_DOEPx_INT.XFERCOMPL interrupt under the following circumstances.
• When the receive FIFO cannot accommodate the complete ISO OUT data packet, the core drops
the received ISO OUT data.
• When the isochronous OUT data packet is received with CRC errors
• When the isochronous OUT token received by the core is corrupted
• When the application is very slow in reading the data from the receive FIFO
2013-05-08 - Wonder Gecko Family - d0233_Rev0.50
301
www.energymicro.com