beautypg.com

Usb interrupt system, At8xc51snd1c – Rainbow Electronics AT89C51SND1C User Manual

Page 97

background image

97

AT8xC51SND1C

4109E–8051–06/03

USB Interrupt System

Interrupt System Priorities

Figure 68. USB Interrupt Control System

Table 1. Priority Levels

USB Interrupt Control System

As shown in Figure 69, many events can produce a USB interrupt:

TXCMPL: Transmitted In Data (Table 96 on page 103). This bit is set by hardware
when the Host accept a In packet.

RXOUTB0: Received Out Data Bank 0 (Table 96 on page 103). This bit is set by
hardware when an Out packet is accepted by the endpoint and stored in bank 0.

RXOUTB1: Received Out Data Bank 1 (only for Ping-pong endpoints) (Table 96 on
page 103)
. This bit is set by hardware when an Out packet is accepted by the
endpoint and stored in bank 1.

RXSETUP: Received Setup (Table 96 on page 103). This bit is set by hardware
when an SETUP packet is accepted by the endpoint.

STLCRC: STALLED (only for Control, Bulk and Interrupt endpoints) (Table 96 on
page 103)
. This bit is set by hardware when a STALL handshake has been sent as
requested by STALLRQ, and is reset by hardware when a SETUP packet is
received.

SOFINT: Start of Frame Interrupt (Table 92 on page 100). This bit is set by hardware
when a USB start of frame packet has been received.

WUPCPU: Wake-Up CPU Interrupt (Table 92 on page 100). This bit is set by
hardware when a USB resume is detected on the USB bus, after a SUSPEND state.

SPINT: Suspend Interrupt (Table 92 on page 100). This bit is set by hardware when
a USB suspend is detected on the USB bus.

EUSB

IE1.6

EA

IE0.7

USB

Controller

IPH/L

Interrupt Enable

Lowest Priority Interrupts

Priority Enable

00

01

10

11

D+

D-

IPHUSB

IPLUSB

USB Priority Level

0

0

0..................Lowest

0

1

1

1

0

2

1

1

3..................Highest