Rev. 1.2
181
C8051T620/1/6/7 & C8051T320/1/2/3
USB Register Address = 0x0B
23.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.
23.10. Endpoint0
Endpoint0 is managed through the USB register E0CSR (USB Register Definition 23.18). The INDEX reg-
ister must be loaded with 0x00 to access the E0CSR register.
An Endpoint0 interrupt is generated when:
1. A data packet (OUT or SETUP) has been received and loaded into the Endpoint0 FIFO. The OPRDY
bit (E0CSR.0) is set to 1 by hardware.
2. An IN data packet has successfully been unloaded from the Endpoint0 FIFO and transmitted to the
host; INPRDY is reset to 0 by hardware.
3. An IN transaction is completed (this interrupt generated during the status stage of the transaction).
4. Hardware sets the STSTL bit (E0CSR.2) after a control transaction ended due to a protocol violation.
USB Register Definition 23.16. CMIE: USB0 Common Interrupt Enable
Bit
7
6
5
4
3
2
1
0
Name
SOFE
RSTINTE
RSUINTE
SUSINTE
Type
R
R
R
R
R/W
R/W
R/W
R/W
Reset
0
0
0
0
0
1
1
0
Bit
Name
Function
7:4
Unused
Read = 0000b. Write = don’t care.
3
SOFE
Start of Frame Interrupt Enable.
0: SOF interrupt disabled.
1: SOF interrupt enabled.
2
RSTINTE
Reset Interrupt Enable.
0: Reset interrupt disabled.
1: Reset interrupt enabled.
1
RSUINTE
Resume Interrupt Enable.
0: Resume interrupt disabled.
1: Resume interrupt enabled.
0
SUSINTE
Suspend Interrupt Enable.
0: Suspend interrupt disabled.
1: Suspend interrupt enabled.