C8051F326-TB Silicon Laboratories Inc, C8051F326-TB Datasheet - Page 104

no-image

C8051F326-TB

Manufacturer Part Number
C8051F326-TB
Description
BOARD PROTOTYPING W/C8051F326
Manufacturer
Silicon Laboratories Inc
Type
MCUr
Datasheet

Specifications of C8051F326-TB

Contents
Board
Processor To Be Evaluated
C8051F326/F327
Interface Type
USB
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
For Use With/related Products
C8051F326
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
C8051F326/7
12.9. The Serial Interface Engine
The Serial Interface Engine (SIE) performs all low level USB protocol tasks, interrupting the processor
when data has successfully been transmitted or received. When receiving data, the SIE will interrupt the
processor when a complete data packet has been received; appropriate handshaking signals are automat-
ically generated by the SIE. When transmitting data, the SIE will interrupt the processor when a complete
data packet has been transmitted and the appropriate handshake signal has been received.
The SIE will not interrupt the processor when corrupted/erroneous packets are received.
12.10. Endpoint0
Endpoint0 is managed through the USB register E0CSR (Figure 12.17). The INDEX register must be
loaded with 0x00 to access the E0CSR register.
An Endpoint0 interrupt is generated when:
The E0CNT register (Figure 12.18) holds the number of received data bytes in the Endpoint0 FIFO.
Hardware will automatically detect protocol errors and send a STALL condition in response. Firmware may
force a STALL condition to abort the current transfer. When a STALL condition is generated, the STSTL bit
will be set to ‘1’ and an interrupt generated. The following conditions will cause hardware to generate a
STALL condition:
Firmware sets the SDSTL bit (E0CSR.5) to ‘1’.
12.10.1.Endpoint0 SETUP Transactions
All control transfers must begin with a SETUP packet. SETUP packets are similar to OUT packets, contain-
ing an 8-byte data field sent by the host. Any SETUP packet containing a command field of anything other
than 8 bytes will be automatically rejected by USB0. An Endpoint0 interrupt is generated when the data
from a SETUP packet is loaded into the Endpoint0 FIFO. Software should unload the command from the
Endpoint0 FIFO, decode the command, perform any necessary tasks, and set the SOPRDY bit to indicate
that it has serviced the OUT packet.
104
1. A data packet (OUT or SETUP) has been received and loaded into the Endpoint0 FIFO. The
2. An IN data packet has successfully been unloaded from the Endpoint0 FIFO and transmitted
3. An IN transaction is completed (this interrupt generated during the status stage of the transac-
4. Hardware sets the STSTL bit (E0CSR.2) after a control transaction ended due to a protocol
5. Hardware sets the SUEND bit (E0CSR.4) because a control transfer ended before firmware
1. The host sends an OUT token during a OUT data phase after the DATAEND bit has been set
2. The host sends an IN token during an IN data phase after the DATAEND bit has been set to
3. The host sends a packet that exceeds the maximum packet size for Endpoint0.
4. The host sends a non-zero length DATA1 packet during the status phase of an IN transaction.
OPRDY bit (E0CSR.0) is set to ‘1’ by hardware.
to the host; INPRDY is reset to ‘0’ by hardware.
tion).
violation.
sets the DATAEND bit (E0CSR.3).
to ‘1’.
‘1’.
Rev. 1.1

Related parts for C8051F326-TB