Rainbow Electronics AT89C5122 User Manual

Page 100

Advertising
background image

100

AT8xC5122/23

4202E–SCR–06/06

Endpoint enable

Before using an endpoint, this one should be enabled by setting the EPEN bit in the
UEPCONX register.

An endpoint which is not enabled won’t answer to any USB request. The Default Control
Endpoint (Endpoint 0) should always be enabled in order to answer to USB standard
requests.

Endpoint type configuration

All Standard Endpoints can be configured in Control, Bulk, Interrupt or Isochronous
mode. The Ping-pong Endpoints can be configured in Bulk, Interrupt or Isochronous
mode. The configuration of an endpoint is performed by setting the field EPTYPE with
the following values:

Control:

EPTYPE = 00b

Isochronous:

EPTYPE = 01b

Bulk:

EPTYPE = 10b

Interrupt:

EPTYPE = 11b

The Endpoint 0 is the Default Control Endpoint and should always be configured in Con-
trol type.

Endpoint direction configuration

For Bulk, Interrupt and Isochronous endpoints, the direction is defined with the EPDIR
bit of the UEPCONX register with the following values:

IN:EPDIR = 1b

OUT:EPDIR = 0b

For Control endpoints, the EPDIR bit has no effect.

Summary of Endpoint Configuration:

Make sure to select the correct endpoint number in the UEPNUM register before
accessing to endpoint specific registers.

Table 62. Summary of Endpoint Configuration

Endpoint configuration

EPEN

EPDIR

EPTYPE

UEPCONX

Disabled

0b

Xb

XXb

0XXX XXXb

Control

1b

Xb

00b

80h

Bulk-In

1b

1b

10b

86h

Bulk-Out

1b

0b

10b

82h

Interrupt-In

1b

1b

11b

87h

Interrupt-Out

1b

0b

11b

83h

Isochronous-In

1b

1b

01b

85h

Isochronous-Out

1b

0b

01b

81h

Advertising