AT76C711(64TQFP) [ATMEL]
Microcontroller, 8-Bit, AVR RISC CPU, 24MHz, CMOS, PQFP64;型号: | AT76C711(64TQFP) |
厂家: | ATMEL |
描述: | Microcontroller, 8-Bit, AVR RISC CPU, 24MHz, CMOS, PQFP64 微控制器 |
文件: | 总66页 (文件大小:513K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
Features
• AVR® Microcontroller
• Clock Generator Provides CPU Rates up to 24 MHz
• Programmable UART with 16-byte FIFOs at the Receiver Side (1), with a Maximum Rate
of 921K Baud
• Programmable SPI Interface
• Full-speed USB Function Controller
• 2K Bytes of SRAM for Data, Stack and Program Variables
• 2K Bytes of Dual-port RAM, Shared among the USB, UART and AVR
• 8K x 16-bit SRAM for Program Execution
• Internal ROM for the Bootstrap Loader
• One USB Control Endpoint
AVR®-based
• Six USB Programmable Endpoints (up to 64 Bytes) with Double-buffered FIFOs for
Bridge between
Full-speed USB
and Fast Serial
Asynchronous
Interfaces
Back-to-back Transfers
• One 8-bit Timer/Counter
• One 16-bit Timer/Counter
• External and Internal Interrupt Sources
• Programmable Watchdog Timer
• Independent UART BRG Oscillator
• 64-lead TQFP Package and BGA Package
• 3.3V Operation
Pin Configuration (TQFP)
AT76C711
RST
PB0_T0
1
2
3
4
5
6
7
8
9
48 P_RX
47 P_TX
46 GND
45 VCC
44 PA7
43 PA6
42 PA5
41 PA4
40 PA3
39 PA2
38 PA1
37 PA0
36 VCC
35 GND
34 TEST2
33 ECK
PB1_T1
PB2_ICP
PB3
PB4_SS
PB5_MOSI
PB6_MISO
PB7_SCK
VCC 10
LFT 11
GND 12
XTAL1 13
XTAL2 14
TEST1 15
PSDIN 16
Rev. 1643E–USB–06/03
Description
The Atmel AT76C711 is a compound USB device designed to provide a high-speed
USB interface to devices that need to communicate with a host through fast serial links,
like UARTs and IrDA interfaces. It is based on the AVR-enhanced RISC architecture
and consists of a USB function interface with a devoted DMA controller for fast data
transfers between the buffers of the USB endpoints and a shared DPRAM of 2K bytes,
2K bytes SRAM for data, stack and program variables, a Synchronous Peripheral Inter-
face (SPI), a UART supporting a maximum rate of 921K baud with DMA channels for
data transfers to/from the DPRAM and an 8K x 16-bit SRAM for microcode execution.
An IrDA controller is also provided, attached to a second UART module, and is able to
communicate with an IrDA transceiver with a maximum rate of 1.2 Mbps. An internal
ROM contains the bootstrap loader which reads the instructions from an external serial
DataFlash® of Atmel AT45 Series and stores them into the on-chip program SRAM.
Alternatively, microcode can be stored in the program SRAM using the slave program
mode while the chip is in the reset state.
The USB Hardware block consists of a USB transceiver, the SIE, endpoint controllers
and an interface to the microcontroller. The USB Hardware interfaces to the USB host at
the packet level. The microcontroller firmware handles the higher-level USB protocol
layers that are not processed by the USB Hardware and in addition, it performs the
peripheral control functions.
The device is suitable for applications where minimization of power dissipation is
required, since there are no power-consumable transactions with external parallel
devices.
Block Diagram
Osc
IrDA 1.0
EncDec
Program
Memory
Controller
Clock
Generator
UART
1
Timers
WD
SRAM
AVR Core
USB
SPI
Address
Decoder
DMA
Controller
DPRAM
UART0
2
AT76C711
1643E–USB–06/03
AT76C711
Applications
The AT76C711 can be used in applications where peripherals supporting fast serial
asynchronous or synchronous transfer of data have to communicate with a host or other
peripherals through a high-speed serial link, like USB. A typical application of
AT76C711 and its functional diagram are shown in Figures 1 and 2.
Typical areas of AT76C711 usage are:
•
•
•
•
•
•
•
Connection of Network Interface Cards (NICs) to a host system
Wireless communications
Bridging of microcontrollers with different types of serial interfaces
USB to UART bridge
USB to IrDA bridge
IrDA to UART bridge
Packet adaptation of network protocol packets to USB requirements
Figure 1. Typical AT76C711 Application
UART
USB
Network
Adaptor
711
Network
Adaptor
RF
Trsc
RF
Trsc
AT76C
Printer
Desktop System
Figure 2. Functional Diagram
S/U
XTAL1 XTAL2 LFT
P R O G R A M M E M O R Y
C O N T R O L L E R
PA0/SIN1/IrRx
PA1/SOUT1/IrT
C L O C K
Osc
PA2
PA3
PA4
PA5
PA6
PA7
IrDA 1.0
EncDec
Debug
R O M
16K
S R A M
x 16-bit
Clock
Generator
U A R T
1
Program Bus
AVR Core
S R A M
2K x 8-bit
Timers
W D
PB0/T0
PB1/T1
SUSP
PB2/INT0
PB3/INT1
PB4/SS
PB5/MOSI
PB6/MISO
PB7/SCK
Interrupt Lines
DP
RAM Address Bus & Bi-directional Data Bus
U S B
DM
TDMAC,
RDMAC, UINT
Address & Control Bus for AVR Register File Programming
PC0-3
RST
TXRDY
RXRDY
PD0/SIN0
PD1/SOUT0
PD2/RTS0
PD3/CTS0
PD4/DSR0
PD5/DTR0
PD6
UINT
/
SPI
Address
Decoder
D P R A M
2K x 8-bit
D M A
Controller
U S A R T
0
PD7
U A R T
Osc
UXTALO
UXTALI
USCLK
LFTU
3
1643E–USB–06/03
Pin Summary – Pin Assignment in Alphabetical Order
Type:
Pin # Pin #
TQFP BGA
I = Input, O = Output, OD = Output, Open Drain, B = Bi-directional, V = Power Supply, Ground
Pin #
Pin #
Pin # Pin #
TQFP BGA
Signal
DM
Type
TQFP BGA
Signal
Type
B
Signal
PD4
Type
23
22
33
19
14
50
*
H4
H3
H8
F3
E2
A7
***
B
B
I
44
2
D6
B1
C3
C2
D2
C1
D1
PA7
58
59
60
61
16
1
C5
B4
C4
A3
G2
A1
B
B
B
B
I
DP
PB0_T0
PB1_T1
PB2_ICP
PB3
B
PD5
ECK
LC
3
B
PD6_INT0
PD7_INT1
PSDIN
RST
I
4
B
LFT
I
5
B
LFTU
GND
I
6
PB4_SS
PB5_MOSI
B
I
V
7
B
27
28
G5,
F5
PM0,
PM1
I
64
48
47
37
38
39
40
41
42
43
B2
B7
B8
E7
F8
E8
E5
D8
E6
D7
NC
8
D4
E1
H6
G6
H7
G7
A6
A5
D5
A4
PB6_MISO
PB7_SCK
PC0
B
B
B
B
B
B
B
B
B
B
24
17
15
34
18
**
E4
H1
G1
G8
H2
****
B6
B5
F1
F2
SUSP
TCK
O
I
P_IRX
P_ITX
PA0
I
9
O
B
B
B
B
B
B
B
29
30
31
32
54
55
56
57
TEST1
TEST2
TP
I
PC1
I
PA1
PC2
I
PA2
PC3
VCC
V
I
PA3
PD0_SIN
PD1_SOUT
51
52
11
12
UXTALI
UXTALO
XTAL1
XTAL2
PA4
O
I
PA5
PD2
PD3
PA6
O
Notes: 1. (*) GND - TGFP: 12, 21, 25, 35, 46, 51, 62.
2. (**) VCC - TQFP: 10, 20, 24, 36, 45, 49, 63.
3. (***) GND - BGA: B3, C6, C7, E3, F6, H5, G4
4. (****) VCC - BGA: A2, A8, C8, F7, F4, G3, D3
4
AT76C711
1643E–USB–06/03
AT76C711
Pin Summary – Pin Assignment in Numerical Order
Type:
I = Input, O = Output, OD = Output, Open Drain, B = Bi-directional, V = Power Supply, Ground
Pin #
Pin #
BGA
Pin #
Pin #
BGA
Pin #
Pin #
BGA
TQFP
Signal
RST
Type
TQFP
Signal
DM
Type
B
O
V
V
I
TQFP
Signal
VCC
Type
V
V
O
I
1
2
A1
B1
C3
C2
D2
C1
D1
D4
E1
D3
E2
E3
F1
F2
G1
G2
H1
H2
F3
G3
G4
H3
I
B
B
B
B
B
B
B
B
V
I
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
H4
E4
H5
F4
G5
F5
H6
G6
H7
G7
H8
G8
F6
F7
E7
F8
E8
E5
D8
E6
D7
D6
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
C8
C7
B8
B7
A8
A7
C6
B6
B5
A6
A5
D5
A4
C5
B4
C4
A3
B3
A2
B2
PB0_T0
PB1_T1
PB2_ICP
PB3
SUSP
GND
VCC
PM0
PM1
PC0
PC1
PC2
PC3
ECK
TEST2
GND
VCC
PA0
GND
3
P_ITX
P_IRX
VCC
4
5
V
I
6
PB4_SS
PB5_MOSI
PB6_MISO
PB7_SCK
VCC
I
LFTU
7
B
B
B
B
I
GND
V
I
8
UXTALI
UXTALO
PD0_SIN
PD1_SOUT
PD2
9
O
B
B
B
B
B
B
B
B
V
V
V
10
11
12
13
14
15
16
17
18
19
20
21
22
LFT
GND
V
I
I
XTAL1
XTAL2
TEST1
PSDIN
TCK
V
V
B
B
B
B
B
B
B
B
PD3
O
I
PD4
PD5
I
PA1
PD6_INT0
PD7_INT1
GND
I
PA2
TP
I
PA3
LC
I
PA4
VCC
VCC
V
V
B
PA5
NC
GND
PA6
DP
PA7
5
1643E–USB–06/03
Signal Description (1)
Type:
Name
Program Memory Controller Signals
I = Input, O = Output, OD = Output, Open Drain, B = Bi-directional, V = Power Supply, Ground
Type Description
PM0, PM1
PSDIN
I
I
Configuration pins – See Figure 3
Program Serial Data-In: In slave program mode, this signal carries the serial program data that
are samples with the positive edge of TCK.
TP
LC
I
I
When RST is active (low), a high level of this signal, for at least two TCK pulses, forces the
program address generator.
Load Complete: A transition from low to high denotes the completion of program data transfer
from the external device. The AVR will start executing instructions from the internal SRAM as
soon as the RST goes high.
TCK
I
A clock signal for sampling PSDIN input.
Port Signals
PA[0:7]
B
B
Port A, PA0 through PA7 – 8-bit bi-directional port.
PB[0:7]
Port B, PB0 through PB7 – 8-bit bi-directional port. PB0, PB1, PB2, PB4 through PB7 are dual-
function as shown below:
Port
PB0
PB1
PB2
PB4
PB5
PB6
PB7
Alternate Function
Timer/Counter0 clock input
Timer/Counter1 clock input
(ICP) Input Capture Pin for Timer/Counter1
(SS) SPI slave port select input
(MOSI) SPI slave port select input
(MISO) SPI master data-in, slave data-out
(SCK) SPI master clock out, slave clock in
PC[0:3]
PD[0:7]
B
B
Port C, PC0 through PC3 – 4-bit output port.
Port D, PD0 through PD7 – 8-bit bi-directional I/O port. PD0, PD1 also serve as the data lines for
the asynchronous serial port as listed below:
Port
Alternate Function
PD0
(SIN) Serial Data-In (I): This pin provides the serial receive data input to 16550 UART.
The SIN signal will be a logic “1” during reset, idle (no data). During the local loopback mode, the
SIN input pin is disabled and SOUT data is internally connected to the UART SIN input.
PD1
(SOUT) Serial Data Out (O): This pin provides the serial transmit data from the 16550
UART. The SOUT signal will be a logic “1” during reset, idle (no data).
PD6
PD7
(INT0) External Interrupt0 source
(INT1) External Interrupt1 source
USB Serial Interface
B
Upstream Plus USB I/O – DP and DM form the differential signal pin pair connected to the host
controller or an upstream hub.
DP
DM
B
Upstream Minus USB I/O
SUSP
O
Suspend: This output pin is deactivated (high) during normal operation. It is used to signal the
host microcontroller that AT76C711 has received USB suspend signaling. This pin will stay
asserted while AT76C711 is in the suspend mode. This pin is deactivated whenever a USB
resume signaling is detected on DP and DM.
6
AT76C711
1643E–USB–06/03
AT76C711
Signal Description (Continued)(1)
Type:
I = Input, O = Output, OD = Output, Open Drain, B = Bi-directional, V = Power Supply, Ground
Name
Type
Description
Test Signals
TEST1
I
I
Test signal for clocks (used in production phase only – normally tied to high)
TEST2
Test signal for monitoring internal signal levels using the four data ports (used in production
phase only – normally tied to high)
ECK
I
Clock pulse for activating various test modes when TEST2 is active
IrDA Interface
P_ITX
O
Infrared Data Out: This pin provides the serial transmit data from the IrDA codec to external IR
Data Transceiver. This function is activated when the IrDA interface is enabled from PERIPHEN
I/O Register.
P_IRX
I
Infrared Data-In: This pin provides the serial receive data input from the external IR Data
Transceiver to IrDA codec. This function is activated when the IrDA interface is enabled from
PERIPHEN I/O Register.
Other Signals
GND
V
V
I
Ground
VCC
3.3V power supply
RST
Reset: A low on this pin for two machine cycles, while the oscillator is running, resets the device.
XTAL1
I
Oscillator Input: Input to the inverting oscillating amplifier. A 12 MHz clock oscillator should be
applied.
XTAL2
LFT
O
I
Oscillator Output: Output of the inverting oscillator amplifier.
Master clock PLL LFT pin
UXTALI
UXTALO
LFTU
I
UART BRG Oscillator Input. Input to the UART oscillator amplifier.
UART BRG Oscillator Output. Output of the UART oscillator amplifier.
UART clock PLL LFT pin
O
I
Note:
1. Any signal with an OVERLINE indicates that it is an active low signal.
7
1643E–USB–06/03
Functional
Description
Bootstrap ROM and
Program Modes
The AT76C711 offers a variety of program modes that allow the user not only to upload
the microcode to internal program SRAM but also to upgrade the system firmware that
is contained in a serial AT45DB011 (or larger) Flash. AT76C711 supports one slave and
three master program modes.
Slave Program Mode
The chip enters the slave program mode while in the reset state (RST active low) when
it detects a positive edge transition of TP signal. The timing diagram of the procedure is
depicted in Figure 3.
Figure 3. Slave Program Mode Timing Diagram
RST
TCK
TP
PSDIN
LP
Master Program Modes
On power-up or after a system reset, the bootstrap code traces the value of the PM0,
PM1 signals and executes the respective task according to Table 1. After the execution
of any of the following tasks, the chip enters the normal mode and starts running the
code loaded in the internal program SRAM.
Table 1. Master Modes
PM0
PM1
Task
1
x
SPI program mode: The internal program SRAM is loaded from the
external serial Flash through the SPI.
0
0
0
1
USB program mode: The host downloads the code to the internal
program SRAM using the DFU protocol.(1)
USB program mode with firmware upgrade: The host downloads
pages of code to the internal program SRAM, which are then
stored to the external SPI Flash.(1)
Note:
1. This mode is not supported in the current version of the chip.
USB Hardware Block
USB Function Interface
The USB function interface consists of a Serial Interface Engine (SIE), a Serial Bus
Controller (SBC) and a System Interface (SI). The SIE performs the clock/data separa-
tion, NRZI encoding and decoding, bit insertion and deletion, CRC generation and
checking and the serial-parallel data conversion. The SBC consists of a protocol engine
and a USB device with one control endpoint (EP0), four programmable endpoints, each
with one 2 x 64-byte dedicated double-buffered FIFO and one programmable endpoint
with one 2 x 16-byte double-buffered FIFO. Each EP can be programmed as isochro-
nous, bulk or interrupt and can be configured either as IN or OUT. A pair endpoint
address scheme is also supported for the first four programmable endpoints. According
to this scheme, two endpoints may have the same address, provided one of them has
8
AT76C711
1643E–USB–06/03
AT76C711
been configured as IN and the other as OUT. The SBC manages the device address,
monitors the status of the transactions, manages the FIFOs and communicates to the
microcontroller through a set of status and control registers. The SI connects the SBC to
the microcontroller and provides a DMA mechanism for transferring data between the
DPRAM and the endpoint buffers.
USB Function Controller
USB Interrupt Handling
The function controller is implemented in the microcontroller’s firmware.
All interrupt signals from the USB functions are consolidated into a single interrupt line,
which is input to the interrupt controller of the AVR. The following sections describe all
the interrupt sources of the USB controller.
All interrupts are masked through the interrupt enable registers that exist in the USB
controller. The External Resume and Received Resume interrupts are cleared when the
firmware clears the interrupt bit (the Suspend Interrupt is automatically cleared when
activity is detected). All other interrupts are cleared when the processor sets a corre-
sponding bit in an interrupt acknowledge register in the USB macro cell. There is only
one bit for each interrupt source.
Interrupt
Description
Function EP0 Interrupt
Function EP1 Interrupt
See “Control Transfers at Function EP0” for details.
For an OUT endpoint, it indicates that Function Endpoint1 has received a valid
OUT packet and that the data is in the FIFO. For an IN endpoint, it means that
the endpoint has received an IN token, sent out the data stored in the FIFO
and received an ACK from the host. The FIFO is now ready to be written by
new data from the processor.
Function EP2 Interrupt
Function EP3 Interrupt
Function EP4 Interrupt
Function EP5 Interrupt
Function EP6 Interrupt
SOF Received
See Function EP1 Interrupt
See Function EP1 Interrupt
See Function EP1 Interrupt
See Function EP1 Interrupt
See Function EP1 Interrupt
Whenever USB Hardware decodes a valid Start of Frame
The USB Hardware has received a remote wake-up request.
EXT RSM
RCVD RSM
The USB Hardware has received resume signaling. The processor’s firmware
should take the function out of the suspended state.
SUSP
The USB Hardware has detected a suspend condition and is preparing to
enter the suspend mode. The processor’s firmware should place the
embedded function in the suspend mode.
Interrupt Priority
The USB macro interrupt priority is defined below.
Priority Level
Interrupt Name
2 (High level)
SOF Received
1: Same level (Low level)
Function EP0 to EP6
Endpoint Interrupt
Endpoint interrupts are triggered by setting or clearing one or more bits in the Control
and Status registers of an endpoint. These interrupts are caused by events during
packet transactions and are different for control and non-control endpoints. The inter-
rupts are described below, with respect to the Control and Status register bit definitions.
Please refer to the “Endpoint Control and Status Register” definition on page 58.
9
1643E–USB–06/03
Interrupt for Non-control Endpoints
1. RX OUT Packet
set
(0 -> 1)
(1 -> 0)
2. TX Packet Ready clear
Interrupt for Control Endpoints
1. RX OUT Packet
2. RX SETUP
set
set
(0 -> 1)
(0 -> 1)
(1 -> 0)
(0 -> 1)
3. TX Packet Ready clear
4. TX Complete set
Serial Interface Engine
The SIE performs the following functions:
•
•
•
•
•
•
•
NRZI data encoding and decoding
Bit stuffing and unstuffing
CRC generation and checking
ACKs and NACKs
Identifying the type of a token
Address checking
Clock generation (via DPLL)
Function Interface Unit
The Function Interface Unit (FIU) provides the interface between the processor and the
SIE. It manages transactions at the packet level with minimal intervention from the pro-
cessor and contains the endpoints’ buffers.
The FIU is designed to operate in single-packet mode and to manage the USB packet
protocol layer. To operate the FIU, the firmware must first enable the endpoints of the
FIU, and select direction and ping-pong capability. After being enabled, the endpoints
are in receive mode by default. The FIU notifies the processor when a valid token has
been received. The data contained in the data packet will be supplied in the FIFO.
The processor transfers the data to and from the host by interacting with each end-
point’s FIFO and Control and Status registers.
For example, when transmitting an IN packet, the FIU assembles the data of the end-
point’s FIFO in a USB packet, transmits the packet and will signal the processor after
the host receives and acknowledges the packet. The FIU performs automatic data
packet retransmission and DATA0/DATA1 PID toggling.
For SETUP tokens, the processor must parse the device request and then respond
appropriately. After a SETUP token, there may be zero (0) or more DATA IN or DATA
OUT packets for which the processor must either supply or receive the data.
10
AT76C711
1643E–USB–06/03
AT76C711
Control Transfers at Function EP0
Legend:
DATA1/DATA0 = Data packet with DATA1 or DATA0 PID
DATA 1 (0)
= Zero length DATA1 packet
Host
USB Macro
Microcontroller
SETUP Stage
1. [SYNC]-[SETUP]
2. [SYNC]-[DATA0]
3. Data are put in FIFO
4. If CRC OK,
Send [SYNC]-[ACK]
5. If CRC OK,
Set RX_SETUP bit
6. INTERRUPT
7. Read UISR (bit 0 is set)
8. Read FCSR0 (RX_SETUP bit)
9. Read FBYTE_CNT0
10. Read FIFO0
11. Parse data
If Set Control Direction
Fill FIFO with data
Set TX_Packet_Ready
If Control Write Phase:
Clear Control Direction
If No Data Stage Phase:
Clear Control Direction
Set Data_End bit
If Unsupported Command:
Set FORCE_STALL bit
12. Clear RX_SETUP bit
13. SET UIAR (EP0 INTA)
Status Stage, No DATA Stage
1. [SYNC]-[IN]
2. Send DATA1(0)
3. If CRC OK,
Send [SYNC]-[ACK]
4. Set TX_Complete bit
5. INTERRUPT
6. Read UISR
7. Read CSR
8. If SET_ADDRESS, write to FADDR
9. Clear TX_Complete bit
11
1643E–USB–06/03
Control Transfers at Function EP0 (Continued)
Legend:
DATA1/DATA0 = Data packet with DATA1 or DATA0 PID
DATA 1 (0)
= Zero length DATA1 packet
Host
USB Macro
Microcontroller
10. Clear Data_End bit
11. Set FORCE_STALL bit
12. SET UIAR (EP0 INTA)
DATA Stage, Control READ
1. [SYNC]-[IN]
2. If TX_Packet_Ready = 1
Send DATA0/DATA1
else
Send STALL
3. If CRC OK,
Send [SYNC]-[ACK]
4. Clear TX_Packet_Ready
5. Set TX_Complete bit
6. INTERRUPT
7. Read UISR
8. Read CSR
9. Clear TX_Complete bit
10. If more data
Fill FIFO with data
Set TX_Packet_Ready
else
Set SET_FORCE_STALL
11. SET UIAR (EP0 INTA)
STATUS/Early STATUS Stage with READ DATA Stage
1. [SYNC]-[OUT]
2. [SYNC]-[DATA1(0)]
3. If TX_Complete = 0
Send [SYNC]-[ACK]
Set RX_OUT
else
Send [SYNC]-[NACK]
4. INTERRUPT
5. Read UISR
6. Read CSR
7. Clear RX_OUT
8. Set Data_End
12
AT76C711
1643E–USB–06/03
AT76C711
Control Transfers at Function EP0 (Continued)
Legend:
DATA1/DATA0 = Data packet with DATA1 or DATA0 PID
DATA 1 (0)
= Zero length DATA1 packet
Host
USB Macro
Microcontroller
9. Set FORCE_STALL
COMMENT: A SETUP token will clear Data End.
Not cleared by firmware in case host retries 1
through 3.
10. SET UIAR (EP0 INTA)
DATA Stage, Control WRITE
1. [SYNC]-[OUT]
2. [SYNC]-[DATA1/DATA0]
3. Data are put in FIFO
4. If CRC OK, send [SYNC]-[ACK]
5. If CRC OK, set RX_OUT
6. INTERRUPT
7. Read UISR
8. Read CSR
9. Read FIFO
10. Clear RX_OUT
If last packet,
Set Data_End
Set FORCE_STALL
11. SET UIAR (EP0 INTA)
STATUS Stage with WRITE DATA Stage
1. [SYNC]-[IN]
2. Send DATA1(0)
3. If CRC OK,
Send [SYNC]-[ACK]
4. Set TX_Complete bit
5. INTERRUPT
6. Read UISR
7. Read CSR
8. Clear TX_Complete bit
9. Clear Data_End bit
10. Set FORCE_STALL bit
11. SET UIAR (EP0 INTA)
13
1643E–USB–06/03
Interrupt and Bulk IN
Transfers
1. The USB Hardware automatically starts the endpoint in receive mode and NAKs
all IN tokens as long as bit CSR[TX Packet Ready] is cleared.
2. The processor checks bit CSR[TX Packet Ready]. If it is “0”, writes the data into
the FIFO, then sets CSR[TX Packet Ready].
3. At the next IN token, the USB Hardware sends the packet out and waits for an
ACK. Until an ACK is received, the USB Hardware will retransmit the packet.
After receiving an ACK, the USB Hardware clears bit CSR[TX Packet Ready], signaling
a successful completion to the processor.
Figure 4. IN Token with and without Ping-pong
IN Token without Ping-pong
HOST Reads USB FIFO
UC Fills USB FIFO
HOST Reads USB FIFO
TX_pkt_rdy = 0
TX_Complete = 1
ACK
TX_pkt_rdy = 0
TX_Complete = 1
ACK
TX_Complete = 0
IN Token
Tx_pkt_rdy = 1
IN Token
IN Token with Ping-pong
Tx_pkt_rdy = 1
Tx_pkt_rdy = 1
UC Pooling
Tx_Complete
UC Pooling
Tx_Complete
UC Fills Data
UC Fills Data
HOST Reads Last Data
HOST Reads Last Data
TX_Complete = 1
ACK
TX_Complete = 1
ACK
TX_Complete = 0
IN Token
TX_Complete = 0
IN Token
Interrupt and Bulk OUT
Transfers
The USB Hardware automatically starts the endpoint in receive mode. When an OUT
token is received and if CSR[RX OUT Packet] is cleared, it stores the data in the FIFO.
It ACKs the host if the data received are not corrupted, and then interrupts the proces-
sor. If CSR[RX OUT Packet] is set, the USB Hardware responds with a NAK to the
incoming OUT token: The processor checks CSR[RX OUT Packet] and if it is “1”, it
reads the data from the FIFO and clears CSR[RX OUT Packet Ready].
Figure 5. OUT Token with and without Ping-pong
OUT Token without Ping-pong
HOST Fills USB FIFO
UC Reads FIFO
HOST Fills USB FIFO
OUT Token
UC Reads FIFO
Rx_OUT = 1
OUT Token
ACK
OUT Token
Rx_OUT = 1
Rx_OUT = 0
OUT Token with Ping-pong
Rx_OUT = 0
Rx_OUT = 0
Uc Pooling
Rx_out
Uc Pooling
Rx_out
UC Reads Last Data
UC Reads Last Data
HOST Fills USB FIFO
HOST Fills USB FIFO
ACK
Rx_OUT = 1
ACK
Rx_OUT = 1
OUT Token
OUT Token
Interrupt and Isochronous
Transfers
Isochronous transfers use the same protocol with bulk transfers except that error correc-
tion and data packet retransmission are not supported:
•
•
•
No ACK token
No NAK token
Data PID is always zero
Interrupt and Interrupt IN
Transfers
Interrupt transfers use the same protocol with bulk IN transfers (Interrupt OUT is not
supported in USB Spec 1.0).
14
AT76C711
1643E–USB–06/03
AT76C711
Suspend
A USB device enters the suspend mode only when requested by the USB host through
bus inactivity for at least 3 ms. The USB Hardware detects this request, sets the SUSP
bit of the Suspend/Resume Register (SPRSR), and interrupts the processor if the inter-
rupt is enabled. The processor should shutdown any peripheral activity, enter power-
down mode and signal the USB Hardware that it can now enter the suspend mode by
writing “1” to the “sleep mode” USB_Macro input pin. At this moment, the
“Suspend2SIE” output pin is activated and the oscillator, PLL and other peripherals
should be disabled.
Resume
Resume is signaled by a J- to K-state transition at the USB port. The USB Hardware
enables the oscillator/PLL and sets the RSM bit of the SPRSR, which generates an
interrupt. The processor starts executing where it left off and services the interrupt. Then
the firmware clears the RCVD RSM bit.
Remote Wake-up
While the USB peripheral is in suspend mode, resuming is also possible through the
remote wake-up feature. Remote wake-up is invoked due to an external event (such as
the detection of a key pressing in a keyboard) and is denoted by the “Ext_int”
USB_Macro pins (active high). This action, in turn, enables the oscillator and the USB
Hardware. The USB Hardware sets the associated flag of UISR and the EXT RSM bit of
SPRSR. These generate two interrupts to the processor: Ext_int and RSM_int. The pro-
cessor starts executing where it left off and services the interrupt. Then the firmware
clears the EXT RSM bit and EXT[0-3] bit.
If the remote wake-up feature is enabled and the USB bus remains idle for a period of
5 ms (already 3 ms in the suspend mode), the resume signal is sent to the host during
the next 10 ms and the RSMINPR bit of the Global State Register is set.
AVR Microcontroller
Interrupt Handling
The AT76C711 is based on the AVR architecture and includes many of the features of
the AVR AT90S8515 microcontroller. All peripherals, apart from SPI and timers, are
memory mapped to the data address space.
The interrupt vector table of AT76C711 is shown below.
Table 2. AT76C711 Interrupt Vectors
Program
Vector #
Address
$0000
$0002
$0004
$0006
$0008
$000A
$000C
$000E
$0010
$0012
$0014
$0016
Source
Interrupt Definition
1
2
RESET
Hardware Pin and Watchdog Reset
USB Suspend and Resume
External Interrupt Request 0
Timer/Counter1 Capture Event
Timer/Counter1 Compare Match A
Timer/Counter1 Compare Match B
Timer/Counter1 Overflow
Timer/Counter0 Overflow
SPI Serial Transfer Complete
Tx DMA Termination
SUSP/RESM
INT0
3
4
TIMER1 CAPT
TIMER1 COMPA
TIMER1 COMPB
TIMER1 OVF
TIMER0 OVF
SPI, STC
5
6
7
8
9
10
11
12
TDMAC
UART0 INT
RDMAC
UART0 Interrupt Request
Rx DMA Termination
15
1643E–USB–06/03
Table 2. AT76C711 Interrupt Vectors (Continued)
Program
Vector #
Address
Source
Interrupt Definition
13
14
15
$0018
USB Hardware
UART1 INT
INT1
USB Hardware Interrupt
UART1 Interrupt Request
External Interrupt Request 1
$001A
$001C
Oscillator and Clock
Generator
AT76C711 has two on-chip crystal oscillators. The first one is the main oscillator and is
used to generate the clocks of the AVR CPU and the 48 MHz clock of the USB core.
The nominal value of this oscillator should be 12 MHz. After the initial reset, the default
CPU rate is 24 MHz. Dividing the 48 MHz clock appropriately, an internal clock of
14.746 MHz is produced, which can be used for generating standard modem baud rates
with a deviation of 1.6 percent.
Alternatively, if a strict baud rate is required, a dedicated oscillator for the UART block is
provided. The Clock Tree Circuit is shown in Figure 6. The output pins of the crystal
oscillators are not designed to drive any external circuits. Instead of using crystals,
either oscillator’s input pin can also be driven by an external clock signal.
Figure 6. Clock Tree Circuit
IrDA
19.2 MHz
div 5
UART1
XTAL
96 MHz
cp1, cp2
PLL
x8
div 4 or 5
div 2
24 or 19.2 MHz
12 MHz
C14745
div 13/8
(gobbling)
div 4
UART0
14.7456 MHz
UXTAL
PLL
x2
C14745
div 2
14.7456 MHz
(Optional)
48 MHz
div 4
(DPLL)
12 MHz
UART0
The main features of UART0 are:
•
•
•
•
•
•
•
•
Programmable Baud Rate Generator
16-byte FIFO at the Receiver Side
Parity, Framing and Overrun Error Detection
Line Break Generation and Detection
Automatic Echo, Local Loopback and Remote Loopback Channel Modes
Interrupt Generation
Two Dedicated Controller Channels
5-, 6-, 7- and 8-bit Character Length
16
AT76C711
1643E–USB–06/03
AT76C711
•
•
Maximum Rate 921.6K Baud
Interface to a DMA Controller for Fast Data Transfers to/from the DPRAM
The input to the baud rate generator is selectable between a 14.746 MHz clock (derived
from the internal clock generator) or the dedicated UART oscillator. Both the DMA con-
troller and the AVR processor can have access to the UART registers. The arbitration of
the UART memory bus is implemented internally to the DMA controller.
Receiver
The UART detects the start of a received character by sampling the RxD signal until it
detects a valid start bit. A low level (space) on RxD is interpreted as a valid start bit if it is
detected for more than 7 cycles of the sampling clock, which is 16 times the baud rate.
Hence a space that is longer than 7/16 of the bit period is detected as a valid start bit. A
space that is 7/16 of a bit period or shorter is ignored and the receiver continues to wait
for a valid start bit. When a valid start bit has been detected, the receiver samples the
RxD at the theoretical midpoint of each bit. It is assumed that each bit lasts 16 cycles of
the sampling clock (1 bit period) so the sampling point is 8 cycles (0.5 bit periods) after
the beginning of the bit. Therefore, the first sampling point is sampled 24 cycles (1.5 bit
periods) after the falling edge of the start bit was detected. Each subsequent bit is sam-
pled 16 cycles (1 bit period) after the previous one.
Receive FIFO Operation
The 16-byte receive data FIFO is enabled by the (US_FCR) bit 0. The user can set the
receiver trigger level. The receiver FIFO section includes a timeout function to ensure
data is delivered to the external CPU. An interrupt is generated whenever the Receive
Holding Register (US_RHR) has not been read after the loading of a character or if the
trigger level has been reached.
Timeout
This function allows an idle condition on the RxD line to be detected. The maximum
delay for which the UART should wait for a new character to arrive while the RxD line is
inactive (high level) is programmed in US_RTO (Receiver Timeout). When this register
is set to “0”, no timeout is detected. Otherwise, the receiver waits for a first character
and then initializes a counter, which decrements at each bit period and is reloaded at
each byte reception. When the counter reaches “0”, the timeout bit (bit 6) in US_CSR is
set. The user can restart waiting for a first character by setting the start timeout bit (bit 4)
of US_CR Register. The timeout duration is:
Duration = Value x _ 4 _ x _ Bit Period
Receive Break
Transmitter
The break condition is detected by the receiver when all data, parity and stop bits are
low. At the moment of the low stop bit detection, the receiver asserts receive break
(bit 2) in US_CSR. The end of receive break is detected by a high level for at least 2/16
of the bit period. Receive break (bit 2) is also set after the end of break has been
detected.
The start bit, data bits, parity bit and stop bits are serially shifted, with the least signifi-
cant bit first, on the falling edge of the serial clock. The number of data bits is selected in
the character length field, (bits 7 and 6) in US_PMR. The parity bit is set according to the
parity type bit 1 field in US_PMR. The number of stop bits is selected in the number of
stop (bits 4, 5) field in US_MR. When a character is written to US_THR (Transmit Hold-
ing), it is transferred to the Shift Register as soon as it is empty. When the transfer
occurs, the transmit ready (bit 1) in US_CSR is set until a new character is written to
US_THR. If the Transmit Shift Register and US_THR are both empty, the transmitter
empty (bit 7) in US_CSR is set.
17
1643E–USB–06/03
Time-guard
The time-guard function allows the transmitter to insert an idle state on the TxD line
between two characters. The duration of the idle state is programmed in US _TTG
(Transmitter Time-guard). When this register is set to “0”, no time-guard is generated.
Otherwise, the transmitter holds a high level on TxD after each transmitted byte during
the number of bit periods programmed in US_TTG.
Transmit Break
The transmitter can generate a break condition on the TxD line when the Start Break
command (bit 0) is set in US_CR (Control Register). In this case, the characters present
in US_THR and in the Transmit Shift Register are completed before the line is held low.
To remove this break condition on the TxD line, the Stop Break command (bit 1) in
US_CR must be set. The UART generates minimum break duration of one character
length. The TxD line then returns to high level (idle state) for at least 12-bit periods to
ensure that the end of break is correctly detected. Then the transmitter resumes normal
operation.
Interrupt Generation
Channel Modes
Each status bit in US_CSR has a corresponding bit in US_IER (Interrupt Enable) that
controls the generation of interrupts by asserting the UART interrupt line. Any of the Par-
ity, Framing or overrun Error condition generate a line? Error Interrupt. Interrupt sources
are given in the register description section.
The UART can be programmed to operate in three different test modes using the field
Channel Mode (bits 6 and 7) in US_MR. Automatic echo mode allows bit-by-bit retrans-
mission. When a bit is received on the RxD line, it is sent to the TxD line. Programming
the transmitter has no effect.
The local loopback mode allows the transmitted characters to be received. TxD and
RxD pins are not used and the output of the transmitter is internally connected to the
input of the receiver. The RxD pin level has no effect and the TxD pin is held high, as in
the idle state.
The remote loopback mode directly connects the RxD pin to the TxD pin. The transmit-
ter and the receiver are disabled and have no effect. This mode allows bit-by-bit
retransmission.
UART1 – IrDA Codec
The IrDA codec provides an IrDA 1.0 standard interface. It is connected to the SIN and
SOUT of UART1. The IRDAMOD Register of the I/O register set selects the operation
mode of the IrDA codec.
The EN bit activates the module. When it is deactivated, the UART signals are con-
nected directly to the external interface, bypassing the IrDA codec block. Otherwise, it
encodes the outgoing and decodes the incoming data from and to the UART1 respec-
tively, according to the IrDA 1.0 standard (3/16 modulation).
The MODE bit gives the user the capability to change the modulation scheme from 3/16
pulse width to 4/16.
The UART settings should be half-duplex to avoid signal interference. The UART1 reg-
ister set is similar to that of UART0: its base address is 2030/hex.
The IrDA codec transmits a 3/16 pulse width on zeros (0) and nothing on ones (1). In
receive operations, it extends the incoming zeros to 16/16 pulse and feeds them
reversed to the UART1 SIN (see “IrDA Serial Infrared Physical Layer Specification” at
www.irda.org/standards).
An internally generated clock of 19.2 MHz makes it possible to use the IrDA module for
up to 1.2 Mbps transfer rates (much higher than the typical 115.2 Kbps). This capability
offers a simple solution for high-speed infrared communications.
18
AT76C711
1643E–USB–06/03
AT76C711
The input to the baud rate generator of UART1 is selectable between the 19.2 MHz
clock and the clock of the dedicated oscillator for standard modem rates.
A typical application of the AT76C711 connection to an external IR Data Transceiver
when the IrDA module is enabled is shown in Figure 7. The GPO is a general-purpose
output (can be provided from the data ports).
Figure 7. AT76C711 Connection to External IR Data Transceiver, IrDA Module
Enabled
AT76C711
GPO
SD/Mode
Tx
Rx
Tx
Rx
IrDA 1.0
Codec
IR
Data
Transceiver
USART1
16x CLK
Clock Gen.
EN
MODE
DMA Controller
The DMA controller is able, under firmware control, to transfer data between the
DPRAM and the UART, without the intervention of the processor. The DMA controller
will interrupt the processor as soon as it transfers the processor-preprogrammed num-
ber of bytes. During data transfers from the DMA controller, the Transmit and Receive
DMA Status registers are updated with possible errors indicated by the UART. These
status registers can be read by the processor, after the DMA controller’s interrupt at the
end of a block transfer, to report if the block transfer was error free or not.
The DMA controller is programmed by the processor to transfer blocks of data between
the DPRAM and the UART core. In addition, the UART can be accessed by the proces-
sor only through the DMA controller module. Thus, data transfers between the
processor and other memory devices are not interrupted when DMA transfers occur.
Segmentation and reassembly of the transmitted/received packets through the UART
are also executed with the aid of the DMA controller, under firmware control. Reassem-
bly of network packets is implemented by storing the USB packets from a certain
endpoint in successive address spaces. The DMA controller is then programmed to con-
secutively transfer the bytes of the reassembled packet that has been formed. On the
other hand, during packet reception from the UART, the processor can program the
DMA controller to read a certain number of bytes from the UART’s FIFO and store them
at a given target address, depending on the packet header. After the end of the DMA
transfer, an interrupt is issued by the DMA controller to signal the processor to check for
possible errors during this transfer and forward the packet to the EPs of the
USB interface.
The DMA controller is programmed with the characteristics of a DMA transfer before it is
enabled. The only information that is required is the DPRAM target address and the
packet length, because it is already aware of the segment boundaries in order to per-
19
1643E–USB–06/03
form wraparound inside the corresponding segment. In addition, status registers provide
information related to errors encountered during a DMA transfer. Two of the above sets
of registers are implemented, one for each direction.
Transmit and receive DMAs are performed by polling the TXRDY and RXRDY signals of
the UART. A DMA operation consists of reading the UART status registers and access-
ing the Data Hold Register. Transmit and receive DMA operations can take place
simultaneously.
Whenever a receive DMA operation is terminated, either normally or by a Receive Char-
acter Timeout Interrupt from the UART or forced by the firmware, an internal RDMAC
interrupt signal from DMA is issued to the processor. After that, the firmware should
read RXTPLL and RXTPLM to be informed about the exact number of the received
bytes, possible errors during DMA and the reason for the DMA termination.
After a transmit DMA termination, either normally or forced by firmware, an internal
TDMAC interrupt signal from the DMA is issued to the processor. After that, the firm-
ware should read TXTPLL and TXTPLM to be informed about the exact number of the
transmitted bytes and the reason for DMA termination.
DPRAM Organization
Mapping Allocations
DPRAM organization is related to the length of the packets transferred through UART.
The programmer can define segments in the DPRAM address space from DPORG Reg-
ister of the DMA controller. Memory segmentation facilitates wraparound during DMA
transfers. According to the number of segments, the DMA controller can determine the
END and START address of each segment so it doesn’t need to be informed about the
segment boundaries each time a transfer is enabled. The default state is the DPRAM
being unsegmented. Details of the possible DPRAM segmentation schemes are given
at the description of the DPORG Register of the DMA controller.
The AVR uses a 16-bit address bus to have access to 64-Kbyte memory locations. In
AT76C711 design this memory is shared among the various peripherals as shown in
Figure 8.
Address Space
0000 - 07FF
0800 - 0FFF
1000 - 1FFF
2000 - 201F
2020 - 202F
2030 - 203F
2040
Size
Module
2048 bytes
2048 bytes
4096 bytes
32 bytes
SRAM
Reserved
USB (not all of the locations are used)
DMA controller
UART0
16 bytes
16 bytes
UART1
1 byte
Program Memory Control bit
Reserved
2041 - 2FFF
3000 - 37FF
3800 - 7FFF
8000 - 7FFF
7FFF - FFFF
4031 bytes
2048 bytes
18432 bytes
16384 bytes
16384 bytes
DPRAM
Reserved
Program SRAM
Reserved
20
AT76C711
1643E–USB–06/03
AT76C711
Figure 8. Memory Allocation for On-chip Resources
64-Kbyte Address Space
0000/h
SRAM
(0-7FF,
Rest Reserved)
0FFF/h
x00
(1)
32 Bytes
1000/h
DMA Controller
USB Register Set
x1F
x20
1FFF/h
2000/h
16-byte Addresses for 12
Registers of UART0
x2F
x50
x5F
16-byte Addresses for 12
Registers of UART1
2FFF/h
3000/h
DPRAM
37FF/h
3800/h
Reserved
7FFF/h
8000/h
*Program for AVR is stored in the 8K x 16-bit
program SRAM (Reset vector is kept in address|
“
0000”). The program memory can be read using the
LPM instruction. However, in order to modify that, it
is mapped to the peripheral memory address space
as follows:
Program SRAM*
Least significant byte of address “0000” corresponds
to byte address 8000/h of the peripheral memory
address space.
Most significant byte of address “0000” corresponds
to byte address 8001/h of the peripheral memory
address space and so on.
FFFF/h
Note:
1. These register blocks are mapped to any 256-byte boundary (x00) in address space
2000 - 2FFF/h.
I/O Memory
The I/O space definition of AT76C711 is shown in Table 3. This space is defined in the
area $00 - $3F and can be directly accessed by IN and OUT instructions or by ordinary
SRAM accesses in the area $20 - $5F. The notation used will be followed in the rest of
this document. A more detailed description of the I/O memory space is given in the sec-
tions that follow.
21
1643E–USB–06/03
Table 3. AT76C711 I/O Space
I/O Address
(SRAM Address)
$3F($5F)
$3E($5E)
$3D($5D)
$39($59)
$37($57)
$36($56)
$35($55)
$34($54)
$33($53)
$32($52)
$31($51)
$2F($4F)
$2E($4E)
$2D($4D)
$2C($4C)
$2B($4B)
$2A($4A)
$29($49)
$28($48)
$27($47)
$26($46)
$21($41)
$20($40)
$1B($3B)
$1A($3A)
$19($39)
$18($38)
$17($37)
$16($36)
$15($35)
$14($34)
$13($33)
$12($32)
Name
Function
SREG
Status Register
SPH
Stack Pointer High
SPL
Stack Pointer Low
EIMSK
TIMSK
External Interrupt Mask Register
Timer Interrupt Mask Register
Timer Interrupt Flag Register
MCU General Control Register
MCU Status Register
TIFR
MCUCR
MCUSR
TCCR0
TCNT0
PRELD
TCCR1A
TCCR1B
TCNT1H
TCNT1L
OCR1AH
OCR1AL
OCR1BH
OCR1BL
ICR1H
Timer0 Control Register
Timer0 (8 bits)
Pre-load Register
Timer1 Control Register A
Timer1 Control Register B
Timer1 High Byte
Timer1 Low Byte
Timer1 Output Compare Register A High Byte
Timer1 Output Compare Register A Low Byte
Timer1 Output Compare Register B High Byte
Timer1 Output Compare Register B Low Byte
Timer1 Input Capture Register High Byte
Timer1 Input Capture Register Low Byte
Watchdog Timer Control Register
IrDA Control Register
ICR1L
WDTCR
IRDAMOD
PORTA
DDRA
Data Register, Port A
Data Direction Register, Port A
Input Pins, Port A
PINA
PORTB
DDRB
Data Register, Port B
Data Direction Register, Port B
Input Pins, Port B
PINB
PORTC
CLK_CNTR
PERIPHEN
PORTD
Data Register, Port C
Clock Control Register
Peripheral Enable Register
Data Register, Port D
22
AT76C711
1643E–USB–06/03
AT76C711
Table 3. AT76C711 I/O Space (Continued)
I/O Address
(SRAM Address)
Name
DDRD
PIND
Function
$11($31)
Data Direction Register, Port D
Input Pins, Port D
$10($30)
$0F($2F)
SPDR
SPI I/O Data Register
The AVR Status Register – SREG
Bit
7
6
5
4
3
2
1
0
$3F ($5F)
Read/Write
I
T
H
S
V
N
Z
C
SREG
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
• Bit 7 – I: Global Interrupt Enable
When set, the interrupts are enabled. The individual interrupt enable control is per-
formed in the individual mask registers. This bit is cleared by USB Hardware after an
interrupt has occurred and is set by the RETI instruction to enable subsequent
interrupts.
• Bit 6 – T: Bit Copy Storage
Bit load (BLD) and bit store (BST) instructions use the T-bit as source and destination
for the operated bit.
• Bit 5 – H: Half-carry Flag
Indicates a half-carry in some arithmetic operations.
• Bit 4 – S: Sign Bit, S = N XOR V
Is an exclusive OR between the negative flag N and the two’s complement overflow
flag V.
• Bit 3 – V: Two’s Complement Overflow Flag
Supports two’s complement arithmetic.
• Bit 2 – N: Negative Flag
When set, indicates a negative result in arithmetic and logic operations.
• Bit 1 – Z: Zero Flag
When set, indicates a zero result after the different arithmetic and logic operations.
• Bit 0 – C: Carry Flag
When set, indicates a carry in the arithmetic or logic operations.
The Stack Pointer – SP
Bit
15
14
13
12
11
10
9
8
$3E ($5E)
$3D ($5D)
SP15
SP7
7
SP14
SP6
6
SP13
SP5
5
SP12
SP4
4
SP11
SP3
3
SP10
SP2
2
SP9
SP1
1
SP8
SP0
0
SPH
SPL
23
1643E–USB–06/03
The MCU Control Register – MCUCR
Bit
7
–
R
0
6
–
R
0
5
4
3
2
–
R
0
1
–
R
0
0
–
R
0
$35 ($55)
Read/Write
Initial Value
SE
R/W
0
SM1
R/W
0
SM0
R/W
0
MCUCR
The MCU Control Register is a R/W 3-bit register with zero initial value. It consists of the
following bits:
• Bits 7..6 – Reserved Bits
Always read as zero.
• Bit 5 – SE: Sleep Enable
When set, enables the MCU to enter sleep mode when the SLEEP instruction is
executed.
• Bits 4..0 – Reserved Bits
These bits always read as zero
MCU Status Register – MCUSR
Bit
7
–
R
0
6
–
R
0
5
–
R
0
4
–
R
0
3
–
R
0
2
–
R
0
1
0
$35 ($55)
Read/Write
Initial Value
RESWD
R/W
PORF
R/W
MCUSR
See bit description
The MCUSR is a 2-bit R/W register that provides information on which reset source
caused an MCU reset.
• Bits 7..2 – Reserved Bits
Always read as zero.
• Bit 1 – REWD
This flag indicates that an external or power-on reset has occurred.
• Bit 0 – PORF: Power-on Reset Flag
The following table shows the value of these two bits after the three modes of reset.
Table 4. PORF and EXTRF Values after Reset
Reset Source
Power-on Reset
External Reset
Watchdog Reset
PORF
1
EXTRF
Undefined
1
Unchanged
Unchanged
Unchanged
24
AT76C711
1643E–USB–06/03
AT76C711
The user program must clear these bits as early as possible. If these bits are cleared
before a reset condition occurs, the source of reset can be found by using the following
truth table.
Table 5. Reset Source Identification
PORF
EXTRF
Reset Source
Watchdog Reset
External Reset
Power-on Reset
Power-on Reset
0
0
1
1
0
1
0
1
The External Interrupt Mask Register – EIMSK
Bit
7
–
R
0
6
–
R
0
5
–
R
0
4
–
R
0
3
2
1
0
$39 ($59)
Read/Write
Initial Value
POL1
R/W
0
POL0
R/W
0
INT1
R/W
0
INT0
R/W
0
EIMSK
This is a 4-bit R/W register. Its initial value is zero. It is used for masking the external
interrupts.
• Bits 7..4 – Reserved Bits
Always read as zero.
• Bit 3 – POL1
Polarity of external interrupt 1. INT1 is active high when this bit is low.
• Bit 2 – POL0
Polarity of external interrupt 0. INT0 is active high when this bit is low.
• Bit 1 – INT1
If it is set and the 1 bit in the Status Register is set, the external pin interrupt 1 is
enabled.
• Bit 0 – INT0
If it is set and the 1 bit in the Status Register is set, the external pin interrupt 0 is
enabled.
The Timer/Counter Interrupt Mask Register – TIMSK
Bit
7
6
5
4
–
R
0
3
2
–
R
0
1
0
–
R
0
$37 ($57)
R/W
TOIE1
R/W
0
OCIE1A
R/W
0
OCIE1B
R/W
0
TICIE1
R/W
0
TOIE0
R/W
0
TIMSK
Initial Value
External interrupts should be acknowledged using general-purpose output pins.
This is an 8-bit R/W register with zero initial value, used for masking the internal timer
interrupts.
• Bit 7 – TOIE1: Timer/Counter1 Overflow Interrupt Enable
When this bit is set and the I-bit in the Status Register is one, the Timer/Counter1 Over-
flow Interrupt is enabled. The corresponding interrupt (at vector $001C) is executed if an
overflow in Timer/Counter1 occurs. The Timer/Counter1 Overflow flag is set in the
Timer/Counter1 Interrupt Flag Register – TIFR.
25
1643E–USB–06/03
• Bit 6 – OCIE1A: Timer/Counter1 Output Compare A Match Interrupt Enable
When this bit is set and the I-bit in the Status Register is one, the Timer/Counter1 Com-
pare A Match Interrupt is enabled. The corresponding interrupt (at vector $0018) is
executed if a Compare A match in Timer/Counter1 occurs. The Compare A flag in
Timer/Counter1 is set in the Timer/Counter Interrupt Flag Register – TIFR.
• Bit 5 – OCIE1B: Timer/Counter1 Output Compare B Match Interrupt Enable
When this bit is set and the I-bit in the Status Register is one, the Timer/Counter1 Com-
pare B Match Interrupt is enabled. The corresponding interrupt (at vector $001A) is
executed if a Compare B match in Timer/Counter1 occurs. The Compare B flag in
Timer/Counter1 is set in the Timer/Counter Interrupt Flag Register – TIFR.
• Bit 4 – Reserved Bit
• Bit 3 – TICIE1: Timer/Counter1 Input Capture Interrupt Enable
When this bit is set and the I-bit in the Status Register is one, the Input Capture Event
Interrupt is enabled. The corresponding interrupt (at vector $0016) is executed if a cap-
ture event occurs on pin PD2. The Input Capture flag in Timer/Counter1 is set in the
Timer/Counter Interrupt Flag Register – TIFR.
• Bit 2 – Reserved Bit
• Bit 1 – TOIE0: Timer/Counter0 Overflow Interrupt Enable
When this bit is set and the I-bit in the Status Register is one, the Timer/Counter0 Over-
flow Interrupt is enabled. The corresponding interrupt (at vector $0020) is executed if an
overflow in Timer/Counter0 occurs. The Timer/Counter0 Overflow flag is set in the
Timer/Counter1 Interrupt Flag Register – TIFR.
The Timer/Counter Interrupt Flag Register – TIFR
Bit
7
6
5
4
–
R
0
3
2
–
R
0
1
0
–
R
0
$36 ($56)
R
TOV1
R/W
0
OCFA
R/W
0
OCFB
R/W
0
ICF1
R/W
0
TOV0
R/W
0
TIFR
Initial Value
• Bit 6 – OCFA: Output Compare Flag A
The OCFA is set when a compare match between Timer/Counter1 and the OCR1A
Register occurs. This flag is cleared when written with a logic “1”.
• Bit 5 – OCFB: Output Compare Flag 1B
The OCF1B is set when a compare match between Timer/Counter1 and the OCR1B
Register occurs. This flag is cleared when written with a logic “1”.
• Bit 4 – Reserved Bit
• Bit 3 – ICF1: Input Capture Flag
This flag, when set, indicates an input capture event, where the contents of the
Timer/Counter1 are transferred to the ICR1 Register. This flag is cleared when written
with a logic “1”.
• Bit 2 – Reserved Bit
• Bit 1 – TOV0: Timer/Counter1 Overflow Flag
The TOV0 is set when an overflow occurs in Timer/Counter0. This flag is cleared when
written with a logic “1”.
26
AT76C711
1643E–USB–06/03
AT76C711
• Bit 0 – Reserved Bit
The Timer/Counter0 Control Register – TCCR0
Bit
7
–
R
0
6
–
R
0
5
4
3
2
1
0
$33 ($53)
Read/Write
Initial Value
–
–
–
CS02
R/W
0
CS01
R/W
0
CS00
R/W
0
TCCR0
R/W
0
R/W
0
R/W
0
Bits 2-0 of TCCR0 register control the prescaling of the Timer0 clock according to
Table 5.
Table 6. Timer0 Prescale Select
CS02
CS01
CS00
Description
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Timer 0 is stopped
clk
clk/8 (3 MHz)(1)
clk/64
clk/256
clk/1024
External Pin PB0, rising edge
External Pin PB0, falling edge
Note:
1. clk = 24 MHz
The Timer/Counter0 – 0
Bit
15
14
13
12
4
11
10
9
8
$32 ($52)
MSB
7
LSB
0
TCNT0
6
5
3
2
1
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
This Timer/Counter consists of 8 bits which can be written by the AVR with any initial
value to start count from. When this counter is enabled (by writing the CS0[2:0] bits of
the TCCR0 with the appropriate value), it starts counting up to 0xFF and when
overflowed it is loaded with the value of the PRELD register.
Pre-load Register – PRELD
Bit
7
6
5
4
3
2
1
0
$31 ($51)
Read/Write
Initial Value
MSB
R/W
0
LSB
R/W
0
PRELD
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
An 8-bit R/W register with zero initial value. The contents of this register are loaded to
Timer/Counter0 (TCNT0) after an overflow of Timer/Counter0 occurs.
27
1643E–USB–06/03
The Timer/Counter1 Control Register A – TCCR1A
Bit
7
6
5
4
3
–
R
0
2
–
R
0
1
–
R
0
0
–
R
0
$2F ($4F)
Read/Write
Initial Value
COM11
R/W
0
COM1A0
COM1B1
COM1B0
TCCR1A
R/W
0
R/W
0
R/W
0
This is an 8-bit R/W register with zero initial value. It controls the action taken by the
specific output pin on compare match A or B that supports Timer1. The functionality of
the bits is as follows:
• Bits 7, 6 – COM1A1, COM1A0: Compare Output Mode A
These bits cause a specific action for the output compare pin PD6, as shown in Table 7,
for Timer0.
• Bits 5, 4 – COM1B1, COM1B0
The same holds for Compare Output Mode B and output compare pin PD7, as in the
previous case for the Compare Output Mode A.
• Bits 3..0 – Reserved Bits
Table 7. Compare Mode Select(1)
COM1X1
COM1X0
Description
0
0
1
0
1
Timer disconnected from output pin
Toggle output pin
0
1
Clear output pin
1
Set output pin
Note:
1. X = A or B
The Timer/Counter Register B – TCCR1B
Bit
7
6
5
–
R
0
4
–
R
0
3
2
1
0
$2E ($4E)
Read/Write
Initial Value
ICNC1
R/W
0
ICES1
R/W
0
CTC1
R/W
0
CS12
R/W
0
CS11
R/W
0
CS10
R/W
0
TCCR1A
This is an 8-bit R/W register with zero initial value.
• Bit 7 – ICNC1: Input Capture1 Noise Canceler (4 CKs)
When this bit is zero, the input canceler function is disabled. The input capture is trig-
gered at the first rising/falling edge sampled on the input capture pin PB2, as specified
by the ICES1 bit. When this bit is set, four successive samples are measured and all
samples must be high/low according to the input capture trigger specification in the
ICES1 bit. The actual sampling frequency is the CPU clock frequency.
• Bit 6 – ICES1: Input Capture1 Edge Select
When this bit is cleared, the Timer/Counter1 contents are transferred to the Input Cap-
ture Register – ICR1 on the falling edge of the input capture pin, PB2. When it is “1”, the
contents are transferred on the rising edge.
• Bits 5..4 – Reserved Bits
Always read as zero.
28
AT76C711
1643E–USB–06/03
AT76C711
• Bit 3 – CTC1: Clear Timer/Counter1 on Compare Match
When it is “1”, the Timer/Counter1 is reset to $0000 after a Compare A match. If it is
cleared, the Timer/Counter1 continues counting after a Compare A match.
• Bits 2..0 – CS12, CS11 and CS10: Clock Select1, Bits 2, 1 and 0
These bits select prescaling source for the Timer/Counter1 according to Table 7.
Table 8. Timer1 Prescale Select
CS12
CS11
CS10
Description
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Timer1 is stopped
clk
clk/8(1)
clk/64
clk/256
clk/1024
External Pin PB1, rising edge
External Pin PB1, falling edge
Note:
1. X = A or B
The Timer/Counter1 – TCNT1H and TCNT1L
Bit
15
14
13
12
11
10
9
8
$2D ($4D)
$2C ($4C)
MSB
TCNT1H
TCNT1L
LSB
0
7
6
5
4
3
2
1
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
This Timer/Counter consists of 16 bits and is made by two 8-bit R/W registers with initial
value of zero, namely TCNT1H and TCNT1L. To ensure that both the high and low
bytes are read and written simultaneously when the CPU accesses these registers, the
access is performed using an 8-bit temporary register (TEMP). This temporary register
is also used when accessing OCR1A, OCR1B and ICR1. If the main program and inter-
rupt routines perform accesses to registers using TEMP, interrupts must be disabled
during access from the main program.
TCNT1 Timer/Counter1 Write
When the CPU writes to the high byte (TCNT1H), the written data are placed in the
TEMP register. Next, when the CPU writes the low byte (TCNT1L), this byte of data is
combined with the TEMP register and all 16 bits are written simultaneously to the
Timer/Counter1 (TCNT1) Register. Consequently, the high byte must be accessed first
for a full 16-bit write operation. When using Timer/Counter1 as an 8-bit counter, it is suf-
ficient to write the low byte only.
• TCNT1 Timer/Counter1 Read
When the CPU reads the low byte (TCNT1L), the data are placed in the TEMP register.
Next, when the CPU reads the high byte (TCNT1H), the CPU receives the data in the
TEMP register. Consequently, the low byte must be accessed first for a full 16-bit read
operation. When using Timer/Counter1 as an 8-bit counter, it is sufficient to read the low
byte only.
29
1643E–USB–06/03
The Timer/Counter1 Output Compare Register B – OCR1BH and OCR1BL
Bit
15
14
13
12
11
10
9
8
$29 ($49)
$28 ($48)
MSB
OCR1BH
OCR1BL
LSB
0
7
6
5
4
3
2
1
Read/Write
Initial Value
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
0
0
0
0
0
0
0
0
This Timer/Counter Output Compare Register B consists of 16 bits and is made by two
8-bit R/W registers with initial value of zero, namely OCR1BH and OCR1BL.
Full 16-bit write and read operations are made according to the way specified for the
Timer/Counter1 (TCNT1) above.
The Timer/Counter1 Input Capture Register – ICR1H and ICR1L
Bit
15
14
13
12
11
10
9
8
$27 ($47)
$26 ($46)
MSB
ICR1H
ICR1L
LSB
0
7
6
5
4
3
2
1
Read/Write
Initial Value
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
R/W
R/W
0
0
0
0
0
0
0
0
0
This Timer/Counter Output Compare Register consists of 16 bits and is made by two
8-bit R/W registers with initial value of zero, namely ICR1H and ICR1L.
Full 16-bit write and read operations are made according to the way specified for the
Timer/Counter1 (TCNT1) above.
The Watchdog Timer Control Register – WDTCR
Bit
7
–
R
0
6
–
R
0
5
–
R
0
4
3
2
1
0
$21 ($41)
Read/Write
Initial Value
WDTOE
R/W
0
WDE
R/W
0
WDP2
R/W
0
WDP1
R/W
0
WDP0
R/W
0
WDTCR
This is an 8-bit R/W register with zero initial value.
• Bits 7..5 – Reserved Bits
Always read as zero.
• Bit 4 – WDTOE: Watchdog Turn Off Enable
This bit must be set when the WDE bit is cleared. Otherwise, the watchdog will not be
disabled. Once set, USB Hardware will clear this bit to zero after four clock cycles.
30
AT76C711
1643E–USB–06/03
AT76C711
• Bit 3 – WDE: Watchdog Enable
When this bit is set, the watchdog timer is enabled; when it is zero, the watchdog timer is
disabled. WDE can only be cleared when the WDTOE is set. To disable an enabled
watchdog timer, the following procedure must be followed:
1. In the same operation, write a logic “1” to WDTOE and WDE. A logic “1” must be
written to WDE even though it is set to one before the disable operation starts.
2. Within the next four clock cycles, write a logic “0” to WDE. This disables the
watchdog.
• Bits 2..0 – WDP2, WDP1, WDP0: Watchdog Timer Prescaler 2, 1 and 0
These bits determine the watchdog timer prescaling when the watchdog timer is
enabled according to the following table.
Table 9. Watchdog Timer Prescale Register Select
WDP2
WDP1
WDP0
Timeout Period (Cycles)
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
16K
32K
64K
128K
256K
512K
1024K
2084K
The IRDAMOD Register
Bit
7
6
5
0
4
0
3
0
2
1
0
$20 ($40)
Read/Write
Initial Value
POL
R/W
0
MODE
R/W
0
EN
R/W
0
IRDAMOD
0
0
• Bits 7..3 – Reserved Bits
Always read as zero.
• Bit 2 – POL
Inverts the polarity of P_IRX data input to IrDA encoder.
• Bit 1 – MODE
When this bit is set, serial data to and from IrDA codec are modulated according to a
4/16 pulse scheme. Otherwise, a logic “0” is denoted by a positive pulse, which remains
high for 3 pulses of the 16x baud clock while a logic “1” is denoted by a low-level signal
for 16 pulses of the 16x baud clock.
• Bit 1 0 – EN
When reset, IrDA codec is bypassed.
31
1643E–USB–06/03
I/O Ports
Port A
Port A is an 8-bit bi-directional I/O port with internal pull-up resistors.
The Port A Data Register – PORTA
Bit
7
6
5
4
3
2
1
0
$1B ($3B)
Read/Write
Initial Value
PORTA7
R/W
0
PORTA6
R/W
0
PORTA5
R/W
0
PORTA4
R/W
0
PORTA3
R/W
0
PORTA2
R/W
0
PORTA1
R/W
0
PORTA0
R/W
0
PORTA
The value of any PORTAx bit is the voltage level to the corresponding pad of PORTA,
when the DDRAx bit is high; x = 0..7
The Port A Data Direction Register – DDRA
Bit
7
6
5
4
3
2
1
0
$1A ($3A)
Read/Write
Initial Value
DDA7
R/W
0
DDA6
R/W
0
DDA5
R/W
0
DDA4
R/W
0
DDA3
R/W
0
DDA2
R/W
0
DDA1
R/W
0
DDA0
R/W
0
DDRA
The Port A Data Direction Register controls the direction of the Port A pins.
When bit DDRAx is set, then PAx pin is output; when DDRAx is cleared, PAx is input;
x = 0..7.
The Port A Input Pins Address – PINA
Bit
7
6
5
4
3
2
1
0
$19 ($39)
Read/Write
Initial Value
PINA7
R/W
1
PINA6
R/W
1
PINA5
R/W
1
PINA4
R/W
1
PINA3
R/W
1
PINA2
R/W
1
PINA1
R/W
1
PINA0
R/W
1
PINA
The Port A Input Pins Address (PINA) is not a physical register. Instead, this address
enables access to the physical voltage value on each port pin. It is a read-only address.
On power up, PORTA is an input port and a read of PINA register returns an all-1 value
due to the pull-up resistors of the PORTA.
Port B
Port B is an 8-bit bi-directional I/O port with internal pull-ups.
The Port B Data Register – PORTB
Bit
7
6
5
4
3
2
1
0
$18 ($38)
Read/Write
Initial Value
PORTB7
R/W
0
PORTB6
R/W
0
PORTB5
R/W
0
PORTB4
R/W
0
PORTB3
R/W
0
PORTB2
R/W
0
PORTB1
R/W
0
PORTB0
R/W
0
PORTB
The value of any PORTBx bit is the voltage level to the corresponding pad of PORTB,
when the DDRBx bit is high; x = 0..7
The Port B Data Direction Register – DDRB
Bit
7
6
5
4
3
2
1
0
$17 ($37)
Read/Write
Initial Value
DDB7
R/W
0
DDB6
R/W
0
DDB5
R/W
0
DDB4
R/W
0
DDB3
R/W
0
DDB2
R/W
0
DDB1
R/W
0
DDB0
R/W
0
DDRB
The Port B Data Direction Register controls the direction of the Port B pins.
32
AT76C711
1643E–USB–06/03
AT76C711
When bit DDRBx is set, then PBx pin is output; when DDRBx is cleared, PBx is input;
x = 0..7.
The Port B Input Pins Address – PINB
Bit
7
6
5
4
3
2
1
0
$16 ($36)
Read/Write
Initial Value
PINB7
R/W
High-Z
PINB6
R/W
High-Z
PINB5
R/W
High-Z
PINB4
R/W
High-Z
PINB3
R/W
High-Z
PINB2
R/W
High-Z
PINB1
R/W
High-Z
PINB0
R/W
High-Z
PINB
The Port B Input Pins Address (PINB) is not a physical register. This address enables
access to the physical voltage value on each port pin. It is a read-only address. On
power up, PORTA is an input port and a read of PINA register returns an all-1 value due
to the pull-up resistors of the PORTA.
Port B, besides its use as a general-purpose I/O port, is used to support alternate func-
tions. Specifically, the SPI interface, the input capture pin for Timer/Counter1 and the
external clocks for the Timer/Counters are implemented through Port B, according to the
following table.
Table 10. Port B Pins Alternate Functions
Port Pin
PB0
Alternate Functions
External Clock Pin for Timer/Counter0
External Clock Pin for Timer/Counter1
Input Capture Pin for Timer/Counter1
SS (SPI Slave Select Input)
PB1
PB2
PB4
PB5
MOSI (SPI Bus Master Output/Slave Input)
MISO (SPI Bus Master Input/Slave Output)
SCK (SPI Bus Serial Clock)
PB6
PB7
Port C
Port C is a 4-bit output port.
The Port C Data Register – PORTC
Bit
7
–
6
–
5
–
4
–
3
2
1
0
$15 ($35)
Read/Write
Initial Value
PORTC3
R/W
0
PORTC2
R/W
0
PORTC1
R/W
0
PORTC0
R/W
0
PORTC
R
0
R
0
R
0
R
0
The value of any PORTCx bit controls directly the voltage level of PCx; x = 0..4
Clock Control Register – CLK_CNTR
Bit
7
6
5
4
3
2
1
0
$14 ($34)
Read/Write
Initial Value
UOSC
R/W
0
UCK
R/W
0
IrCK
R/W
0
CLK_CNTR
R
0
R
0
R
0
R/W
0
R/W
0
This is a 5-bit R/W register that is used for controlling the clocks of the peripheral com-
ponents and the speed of the MCU.
33
1643E–USB–06/03
• Bits 7..5 – Reserved
Always read as zero.
• Bit 4 – UOSC
Enables UART oscillator when set.
• Bit 3 – UCK
Select clock source for UART0 module. When cleared, the 16x (baud rate) clock input of
the UART0 is the gobbling clock generated from the 24 MHz clock after divided by 13/8
as shown in Figure 6. All standard UART rates up to 921K baud can be supported.
When this bit is set, the UART0 16x (baud rate) clock frequency is that of the UOSC pro-
vided that UOSC bit is also set.
• Bit 2 – IrCK
Select clock source for UART1 - IrDA module. When cleared, the 16x (baud rate) clock
input of the UART1 is 19.2 MHz derived from the division of 96 MHz by 5, as shown in
Figure 6.
When this bit is set, the UART1 16x (baud rate) clock frequency is that of the UOSC pro-
vided that UOSC bit is also set.
• Bits 1..0 – Reserved
These bits should be set to zero.
Peripheral Enable Control Register – PERIPHEN
Bit
7
6
5
4
3
2
1
0
$13 ($33)
Read/Write
Initial Value
IRDA
R/W
0
UART
R/W
0
USB
R/W
0
PERIPHEN
R
0
R
0
R/W
0
R/W
0
R/W
0
A 6-bit R/W register that enables the peripheral components of the system, such as SPI,
UART and USB.
• Bits 7..6 – Reserved Bits
Always read as zero.
• Bits 5..3 – Reserved Bits
• Bit 2 – IRDA
When set, enables the function of IrDA.
• Bit 1 – UART
When set, enables the function of UART.
• Bit 0 – USB
When set, enables the function of USB (clock enable).
34
AT76C711
1643E–USB–06/03
AT76C711
Port D
Port D is an 8-bit bi-directional I/O port. Note that the PORTD pins 7 and 6 have internal
pull down resistors while the rest have internal pull-ups.
The Port D Data Register – PORTD
Bit
7
6
5
4
3
2
1
0
$12 ($32)
Read/Write
Initial Value
PORTD7
R/W
0
PORTD6
R/W
0
PORTD5
R/W
0
PORTD4
R/W
0
PORTD3
R/W
0
PORTD2
R/W
0
PORTD1
R/W
0
PORTD0
R/W
0
PORTD
The value of any PORTDx bit is the voltage level to the corresponding pad of PORTD,
when the DDRDx bit is high; x = 0..7.
The Port D Data Direction Register – DDRD
Bit
7
6
5
4
3
2
1
0
$11 ($31)
Read/Write
Initial Value
DDD7
R/W
0
DDD6
R/W
0
DDD5
R/W
0
DDDD4
R/W
0
DDD3
R/W
0
DDD2
R/W
0
DDD1
R/W
0
DDD0
R/W
0
DDRD
The Port D Data Direction Register controls the direction of the Port D pins.
When bit DDRDx is set, then PDx pin is output; when DDRDx is cleared, PDx is input;
x = 0..7.–
Table 11. Port D Pins Alternate Functions
Port Pin
PD0
Alternate Functions
UART Receive Input
PD1
UART Transmit Output
External Interrupt Input0
External Interrupt Input1
PD6
PD7
The Port D Input Pins Address – PIND
Bit
7
6
5
4
3
2
1
0
$10 ($39)
Read/Write
Initial Value
PIND7
R/W
0
PIND6
R/W
0
PIND5
R/W
1
PIND4
R/W
1
PIND3
R/W
1
PIND2
R/W
1
PIND1
R/W
1
PIND0
R/W
1
PIND
The Port D Input Pins Address (PIND) is not a physical register. Instead, this address
enables access to the physical voltage value on each port pin. It is a read-only address.
On power up, PORTD is an input port and a read of PIND register returns an all-1 value
for PIND 5 - 0 due to the pull-up resistors of the those pins and zero for PIND6, PIND7
due to their pull down resistors.
The SPI Control Register – SPCR
Bit
7
6
5
4
3
2
1
0
$0D ($2D)
Read/Write
Initial Value
SPIE
R/W
0
SPE
R/W
0
DORD
R/W
0
MSTR
R/W
0
CPOL
R/W
0
CPHA
R/W
0
SPR1
R/W
0
SPR0
R/W
0
SPCR
An 8-bit R/W register with zero initial value.
35
1643E–USB–06/03
• Bit 7 – SPIE: SPI Interrupt Enable
This bit causes setting of the SPIF bit in the SPSR Register to execute the SPI Interrupt
provided that global interrupts are enabled.
• Bit 6 – SPE: SPI Enable
When it is set, the SPI is enabled and SS, MOSI, MISO and SCK are connected to pins
PB4, PB5, PB6 and PB7.
• Bit 5 – DORD: Data Order
When it is “1”, the LSB of the data word is transmitted first. When it is cleared, the MSB
of the data word is transmitted first.
• Bit 4 – MSTR: Master/Slave Select
This bit selects Master SPI when set and Slave SPI mode when cleared. If SS is config-
ured as input and is driven low while MSTR is set, MSTR will be cleared and SPIF in
SPSR will become set. The user will then have to set MSTR to re-enable SPI master
mode.
• Bit 3 – CPOL: Clock Polarity
When this bit is set, SCK is high when idle. When CPOL is cleared, SCK is low when
idle.
• Bit 2 – CPHA: Clock Phase
When set, the data is valid in the falling edge of SCK if CPOL = 0, or in the rising edge of
SCK when CPOL = 1. When cleared, data are valid in the rising edge of SCK if
CPOL = 0 and in the falling edge of SCK if CPOL = 1.
• Bits 1..0 – SPR1, SPR0: SPI Clock Rate Select 1 and 0
These two bits control the SCK rate of the device configured as a master. SPR1 and
SPR0 have no effect on the slave. The relationship between the slave and the oscillator
clock frequency (fcl ) is shown in the following table..
Table 12. Relationship between SCK and the Oscillator Frequency
SPR1
SPR0
SCG Frequency
fcl /4
0
0
1
1
0
1
0
1
fcl /16
fcl /64
fcl /128
The SPI Status Register – SPSR
Bit
7
6
5
–
R
0
4
–
R
0
3
–
R
0
2
–
R
0
1
–
R
0
0
–
R
0
$0E ($2E)
Read/Write
Initial Value
SPIF
R
WCOL
SPSR
R
0
0
This is an 8-bit read register with zero initial value.
• Bit 7 – SPIF: SPI Interrupt Flag
When a serial transfer is complete, the SPIF bit is set and an interrupt is generated if
SPIE in SPCR is set and global interrupts are enabled. Alternatively, the SPIF bit is
cleared by first reading the SPI Status Register with SPIF set, then by accessing the SPI
Data Register.
36
AT76C711
1643E–USB–06/03
AT76C711
• Bit 6 – WCOL: Write Collision Flag
The WCOL bit is set if the SPI Data Register (SPDR) is written during a data transfer.
During data transfer, the result of reading the SPDR may be incorrect, and writing to it
will have no effect. The WCOL bit (and the SPIF bit) are cleared by first reading the SPI
Status Register with WCOL set, and then by accessing the SPI Data Register.
• Bits 5..0 – Reserved
Always read as zero.
The SPI Data Register
Bit
7
6
5
4
3
2
1
0
$0F ($2F)
Read/Write
Initial Value
MSB
R/W
0
LSB
R/W
0
SPDR
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
An 8-bit R/W register with zero initial value. It is used for data transfer between the reg-
ister file and the SPI Shift Register. Writing to the register initiates data transmission.
Reading the register causes the Shift Register Receive buffer to be read.
37
1643E–USB–06/03
Data Memory Peripherals – Register Description
UART Register Set
There are two sets of the following registers one for each UART. For UART0, the base address for those registers is
2020/hex while for UART1 the base address is 2050/hex. In Table 12, the register file and its fields are briefly presented. A
more detailed description is provided in the following sections.
Table 13. UART Register File and Register Fields
OffsetAddr.
A[3:0]
Register
[default]
Bit 7
X
Bit 6
X
Bit 5
X
Bit 4
X
Bit 3
X
Bit 2
X
Bit 1
X
Bit0
X
0000
0000
US_RHR
US_THR
X
X
X
X
X
X
X
X
Transmitter
Empty
Interrupt
Receive
Timeout
Interrupt
Receive
Break
Interrupt
Transmit
Holding
Register
Receive
Holding
Register
Line Error
Interrupt
0001
0010
0011
0100
US_IER
RCVR
Trigger
(MSB)
RCVR
Trigger
(LSB)
DMA Mode
Select
RCVR
FIFO Reset
FIFO
Enable
US_FCR(1)
US_PMR
US_MR
0
0
0
Character
Length
(MSB)
Character
Length
(LSB)
Number of
Stop Bits
(MSB)
Number of
Stop Bits
(LSB)
Parity
Mode
(PTM2)
Parity
Mode
(PTM1)
Parity Type
(PT)
0
0
Channel
Mode
Channel
Mode
0
0
0
0
0
(CHM1)
(CHM0)
Transmit
Holding
Register
Ready
Receive
Holding
Register
Ready
Transmitter
Empty
Receive
Timeout
Framing
Error
Overrun
Error
Receive
Break
0101
0110
US_CSR
US_CR
Parity Error
Tx Enable
Reset
Status Bit
Restart
Timeout
Rx Enable
Tx Reset
Rx Reset
Stop Break
Start Break
0111
1000
1001
1010
US_BL
MSB
MSB
MSB
MSB
LSB
LSB
LSB
LSB
US_BM
US_RTO
US_TTG
Note:
1. This Register is not available for UART1 and should not be written.
38
AT76C711
1643E–USB–06/03
AT76C711
Receive Holding Register – US_RHR
Bit
7
6
5
4
3
2
1
0
$0
MSB
W
LSB
W
US_RHR
US_THR
US_IER
Read/Write
Initial Value
W
0
W
0
W
0
W
0
W
0
W
0
0
0
Transmit Holding Register – US_THR
Bit
7
6
5
4
3
2
1
0
$0
MSB
R
LSB
R
Read/Write
Initial Value
R
0
R
0
R
0
R
0
R
0
R
0
0
0
Interrupt Enable Register – US_IER
Bit
7
6
5
4
3
2
1
0
$1
TXEI
R/W
0
RXTOI
R/W
0
Res
R/W
0
Res
RLEI
R/W
0
RBRI
R/W
0
THRI
R/W
0
RHRI
Read/Write
Initial Value
R/W
0
R/W
0
• Bit 7 – Transmitter Empty Interrupt
When set, the interrupt is enabled. When both the Transmit Holding Register (US_THR)
and the Transmit Shift Register are empty and the I-bit in the Status Register (SREG) of
the MCU is set, an interrupt will occur.
• Bit 6 – Receive Timeout Interrupt
When set, the Timeout Interrupt is enabled. When the timeout period for the receiver
has passed and the I-bit in the Status Register (SREG) of the MCU is set, an interrupt
will occur.
• Bit 5 – Reserved
• Bit 4 – Reserved
• Bit 3 – Line Error Interrupt
This bit, when set, enables the Line Error Interrupt. If the I-bit in the Status Register
(SREG) of the MCU is set, an interrupt will occur at a line error.
• Bit 2 – Receive Break Interrupt
When set, enables Receive Break Interrupt. If a receive break condition is detected and
both this and the I-bit of SREG of the MCU is set, an interrupt will occur.
• Bit 1 – Transmit Holding Register Interrupt
When set, indicates that the Transmit Ready Interrupt is enabled. When the contents of
the Transmit Holding Register are transferred to the Transmit Shift Register and both
this and the I-bit of SREG of the MCU are set, an interrupt occurs.
• Bit 0 – Receive Holding Register Interrupt
When set, indicates that the Receive Holding Register Interrupt is enabled. If the
data loaded in the Receive Holding Register (US_RHR) are not read or the trigger level
has been reached, an interrupt occurs if this bit and the I-bit of the SREG of the MCU
are set.
39
1643E–USB–06/03
FIFO Control Register – US_FCR
Bit
7
6
5
4
3
2
1
0
$2
RCVR1
R/W
0
RCVR0
R/W
0
Res
R/W
0
Res
R/W
0
RDMA
R/W
0
Res
R/W
0
FRS
R/W
0
FEN
R/W
0
US_FCR
Read/Write
Initial Value
• Bits 7..6 – RCVR Trigger Bits
These bits indicate the minimum number of bytes required in the receive FIFO to gener-
ate a Receive Ready Interrupt. The trigger level is shown in the following table.
Bit 7
Bit 6
Trigger Level
0
0
1
1
0
1
0
1
1
4
8
14
• Bits 5..4 – Reserved
• Bit 3 – DMA Mode Select
When set, the DMA is in burst mode according to the value in US_FCR. When it is
cleared, the characters are read one byte each time.
• Bit 2 – Reserved
• Bit 1 – FIFO Reset
When set, resets the receive FIFO.
• Bit 0 – FIFO Enable
When set, enables the 16-byte receive FIFO.
Protocol Mode Register – US_PMR
Bit
7
6
5
4
3
2
1
0
$3
CHL1
R/W
0
CHL0
R/W
0
SBN1
R/W
0
SBN0
R/W
0
PM1
R/W
0
PM0
R/W
0
Res
R/W
0
LSB
R/W
0
US_PMR
Read/Write
Initial Value
• Bits 7..6 – Character Length
These bits determine the character length, according to the following table.
Bit 7
Bit 6
Character Length
0
0
1
0
1
0
5
6
7
40
AT76C711
1643E–USB–06/03
AT76C711
• Bits 5..4 – Number of Stop Bits
These bits determine the number of stop bits, according to the following table.
Bit 5
Bit 4
Number of Stop Bits
0
0
1
1
0
1
0
1
1
1.5
2
Reserved
• Bits 3..1 – Parity Mode
These bits determine the parity mode, according to the following table.
Bit 3
Bit 2
Bit1
Parity Mode
Even Parity
Odd Parity
Space
0
0
0
0
1
0
0
1
1
x
0
1
0
1
x
Mark
No Parity
• Bit 0 – Reserved
Mode Register – US_MR
Bit
7
6
5
4
3
2
1
0
$4
CHM1
R/W
0
CHM0
R/W
0
Res
Res
R/W
0
Res
R/W
0
Res
R/W
0
Res
R/W
0
Res
R/W
0
US_MR
Read/Write
Initial Value
R/W
0
• Bits 7..6 – Channel Mode
These bits determine the channel mode, according to the following table.
Bit 7
Bit 6
Channel Mode
Normal Mode
0
0
1
1
0
1
0
1
Automatic Echo Mode
Local Loopback Mode
Remote Loopback Mode
41
1643E–USB–06/03
• Bits 5..0 – Reserved
Control Status Register – US_CR
Bit
7
6
5
4
3
2
1
0
$5
TXE
R/W
0
RXTO
R/W
0
PE
R/W
0
FE
R/W
0
OE
R/W
0
RBR
R/W
0
THR
R/W
0
RHR
R/W
0
US_CSR
Read/Write
Initial Value
• Bit 7 – Transmitter Empty
When set, indicates that both the Transmit Holding Register (US_THR) and Transmit
Shift Register are empty.
• Bit 6 – Receive Timeout
When set, indicates that a receive timeout condition has occurred.
• Bit 5 – Parity Error
When set, indicates that a parity error has occurred.
• Bit 4 – Framing Error
When set, indicates that a framing error has occurred (start or stop bits have been
received with errors).
• Bit 3 – Overrun Error
When set, indicates that an overrun error has occurred. This means that the Receive
Holding Register is being written with a new value, while the previous one has not been
read.
• Bit 2 – Receive Break
When set, indicates that a break condition has occurred during reception.
• Bit 1 – Transmit Holding Register Ready
When set, indicates that the contents of the Transmit Holding Register have been trans-
ferred to the Transmit Shift Register.
• Bit 0 – Receive Holding Register Ready
When set, indicates that the Receive Holding Register is full.
Control Register – US_CR
Bit
7
6
5
4
3
2
1
0
$6
RXEN
R/W
0
RLES
R/W
0
TXEN
R/W
0
RSTO
R/W
0
TXRS
R/W
0
RXRS
R/W
0
SPB
R/W
0
STB
R/W
0
US_CR
Read/Write
Initial Value
• Bit 7 – Rx Enable
When set, enables the receiver block of UART.
• Bit 6 – Reset Line Error Status Bit
When set, resets the PE, FE, OE bits of US_CSR.
• Bit 5 – Tx Enable
When set, enables the transmitter block of UART.
• Bit 4 – Restart Timeout
When set, resets the timeout counter for a new timeout period.
42
AT76C711
1643E–USB–06/03
AT76C711
• Bit 3 – Tx Reset
When set, resets the transmit logic.
• Bit 2 – Rx Reset
When set, resets the receive logic.
• Bit 1 – Stop Break
Break command to the transmit logic. When set, stops break condition.
• Bit 0 – Start Break
Break command to the transmit logic. When set, starts break condition.
Baud Rate Register, Low Byte – US_BL
Bit
7
6
5
4
3
2
1
0
$7
MSB
R/W
0
LSB
R/W
0
US_BL
US_BM
US_RTO
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
Baud Rate Register, High Byte – US_BM
Bit
7
6
5
4
3
2
1
0
$8
MSB
R/W
0
LSB
R/W
0
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
Receiver Timeout Register – US_RTO
Bit
7
6
5
4
3
2
1
0
$9
MSB
R/W
0
LSB
R/W
0
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
This register contains the maximum period for which the UART can wait before a char-
acter arrives during the timeout function. This function is disabled when this register is
zero. The value of register US_RTO represents bit periods.
Transmitter Time-guard Register – US_TTG
Bit
7
6
5
4
3
2
1
0
$A
MSB
R/W
0
LSB
R/W
0
US_TTG
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
The value of this register indicates the delay (in bit periods) that an active transmitter
has to interpose between two consecutive character transmissions.
43
1643E–USB–06/03
Table 14. Baud Rate Generation Example (Clock = 14,7456 MHz)
User Divisor (16 • clk)
Output
Baud Rate
UBM Value
(Hex)
UBL Value
(Hex)
(Decimal)
9216
4608
2304
1536
768
384
192
96
(Hex)
2400
1200
900
600
300
180
C0
100
200
24
12
09
06
03
01
00
00
00
00
00
00
00
00
00
00
00
00
00
00
00
80
C0
60
30
18
10
0C
06
03
02
01
400
600
1200
2400
4800
9600
19200
38400
57.6k
76.81
153.6k
307.2k
460.8k
921.6k
60
48
30
24
18
16
10
12
0C
6
06
3
03
2
02
1
01
DMA Controller
Register Set
The base address for the DMA register file is 2000/hex. The following sections describe
the bits of the registers of the DMA controller.
TXTADL – Transmit DMA Target Address LSBs
Register Address:
Default State:
0x2001
0x00
Bit
7
Mnemonic
Description
TXDMAEN
Reserved
Transmit DMA enable
6 - 4
3 - 0
TXTAD[11:8]
Most significant bits of the 12-bit transmit DMA
target address
TXPLL – LSBs of Packet Length during Direct Memory Readings
Register Address:
Default State:
0x2003
0x00
Bit
Mnemonic
TXPL[7:0]
Description
7 - 0
Least significant bits of the 11-bit transmit packet
length field
44
AT76C711
1643E–USB–06/03
AT76C711
TXPLM – MSBs of Packet Length during Direct Memory Readings
Register Address:
Default State:
0x2004
0x00
Bit
Mnemonic
Description
7 - 3
2 - 0
Reserved
TXPL[10:8]
Most significant bits of the 11-bit transmit packet
length field
TXTPLL – LSBs of the Number of Bytes Transmitted during the Last
Transmit DMA
Register Address:
Default State:
0x2005
0x00
Bit
Mnemonic
TXTPL[7:0]
Description
7 - 0
Least significant bits of the number of bytes
transmitted during the last transmit DMA operation
TXTPLM – MSBs of the Number of Bytes Transmitted during the Last Transmit
DMA and Transmit Status Information
Register Address:
Default State:
0x2006
0x00
Bit
7 - 5
4
Mnemonic
Description
Transmit status information (to be defined)
TCOM
TNCOM
DMA has normally terminated after transmitting the
requested number of bytes. Cleared when this
register is read.
3
Host has ceased a transmit DMA before the
requested buffer size is transmitted. Cleared when
this register is read.
2 - 0
TXTPL[10:8]
Most significant bits of the number of bytes
transmitted during the last transmit DMA operation
RXTADL – Received DMA Target Address LSBs
Register Address:
Default State:
0x2007
0x00
Bit
Mnemonic
RXTAD[7:0]
Description
7 - 0
Least significant bits of the 12-bit receive DMA
target address
45
1643E–USB–06/03
RXTADMEN – Receive DMA Target Address MSBs, DMA Enable
Register Address:
Default State:
0x2008
0x00
Bit
7
Mnemonic
Description
RXDAMAEN
Reserved
Receive DMA enable
6 - 4
3 - 0
RXTAD[11:8]
Most significant bits of the 12-bit receive DMA target
address
RSPLL – LSBs of Packet Length during Direct Memory Writings
Register Address:
Default State:
0x2009
0x00
Bit
Mnemonic
RXPL[7:0]
Description
7 - 0
Least significant bits of the 11-bit receive packet
length field
RXPLM – MSBs of Packet Length during Direct Memory Writings
Register Address:
Default State:
0x200A
0x00
Bit
Mnemonic
Description
7 - 3
2 - 0
Reserved
RXPL[10:8]
Most significant bits of the 11-bit receive packet
length field
RXTPLL – LSBs of the Number of Bytes Received during the Last Receive DMA
Register Address:
Default State:
0x200B
0x00
Bit
Mnemonic
RXTPL[7:0]
Description
7 - 0
Least significant bits of the number of the received
bytes during the last receive DMA operation
46
AT76C711
1643E–USB–06/03
AT76C711
RXTPLM – MSBs of the Number of Bytes Received during the Last Receive DMA
and Receive Status Information
Register Address:
Default State:
0x200C
0x00
Bit
Mnemonic
Description
7
RER
At least one error (parity, framing, overrun) occurred
during packet reception. Cleared when a new
receive DMA is programmed.
6
5
4
Reserved
Reserved
RCOM
DMA has normally terminated after receiving the
requested number of bytes. Cleared when this
register is read.
3
RNCOM
The processor has ceased DMA before receiving
the expected number of bytes. Cleared when this
register is read.
2 - 0
RXTPL[10:8]
Most significant bits of the number of the received
bytes during the last receive DMA operation
INTCST – Interrupt Control and Status Register
Register Address:
Default State:
0x200D
0x00
Bit
7 - 4
3
Mnemonic
Description
Reserved
DTXIRQ
This bit indicates that a Transmit DMA Interrupt
request is pending. This bit is cleared and the
corresponding interrupt is acknowledged when the
RXTPLM Register is read.
2
DRXIRQ
This bit indicates that a Receive DMA Interrupt
request is pending. This bit is cleared and the
corresponding interrupt is acknowledged when the
RXTPLM Register is read.
1
0
TXINTE
RXINTE
Enables Transmit DMA interrupts
Enables Receive DMA interrupts
47
1643E–USB–06/03
USB Register Set
The USB appears to the AVR just like another peripheral. The USB register file is
mapped to the SRAM space. Table 14 summarizes the USB cell-specific registers.
Table 15. USB Register Set
Register
Address
0x0FD
0x0FC
0x0FB
0x0FA
0x0F9
Default
Function
FRM_NUM_H
FRM_NUM_L
GLB_STATE
SPRSR
xxxxx000
xxxxx000
xxxxx000
xxxxx000
xxxxx000
Frame Number High Register
Frame Number Low Register
Global State Register
Suspend/Resume Register
SPRSIE
Suspend/Resume Interrupt Enable
Register
UISR
0x0F7
0x0F5
0x0F3
0x0F2
0x0F1
0x0EF
0x0EE
0x0EC
0x0EC
0x0EB
0x0EA
0x0E9
0x0DF
0x0DE
0x0DD
0x0DC
0x0DB
0x0DA
0x0D9
0x0CF
0x0CE
0x0CD
0x0CC
0x0CB
0x0CA
0x0C9
0x0BF
0x0BE
00000000
xxxxx000
00000000
00000000
00000000
0xxx0000
0xxx0000
0xxx0000
0xxx0000
0xxx0000
0xxx0000
0xxx0000
x1110000
x1110000
x1110000
x1110000
x1110000
x1110000
x1110000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
USB Interrupt Status Register
USB Interrupt Acknowledge Register
USB Interrupt Enable Register for all EPs
Function Address Register
UIAR
UIER
FADDR
ENDPPGPG
ECR0
Function Endpoint Ping-pong Register
Endpoint0 Control Register
ECR1
Endpoint1 Control Register
ECR2
Endpoint2 Control Register
ECR3
Endpoint3 Control Register
ECR4
Endpoint4 Control Register
ECR5
Endpoint5 Control Register
ECR6
Endpoint6 Control Register
CSR0
Endpoint0 Control and Status Register
Endpoint1 Control and Status Register
Endpoint2 Control and Status Register
Endpoint3 Control and Status Register
Endpoint4 Control and Status Register
Endpoint5 Control and Status Register
Endpoint6 Control and Status Register
FIFO 0 Data Register
CSR1
CSR2
CSR3
CSR4
CSR5
CSR6
FDR0
FDR1
FIFO 1 Data Register
FDR2
FIFO 2 Data Register
FDR3
FIFO 3 Data Register
FDR4
FIFO 4 Data Register
FDR5
FIFO 5 Data Register
FDR6
FIFO 6 Data Register
FBYTE_CNT0_L
FBYTE_CNT1_L
Byte Count FIFO 0 Register [7:0]
Byte Count FIFO 1 Register [7:0]
48
AT76C711
1643E–USB–06/03
AT76C711
Table 15. USB Register Set (Continued)
Register
Address
0x0BD
0x0BC
0x0BB
0x0BA
0x0B9
0x0AF
0x0AE
0x0AD
0x0AC
0x0AB
0x0AA
0x0A9
0x100
0x101
0x102
0x103
0x104
0x105
0x106
0x107
0x108
0x109
0x10a
Default
Function
FBYTE_CNT2_L
FBYTE_CNT3_L
FBYTE_CNT4_L
FBYTE_CNT5_L
FBYTE_CNT6_L
FBYTE_CNT0_H
FBYTE_CNT1_H
FBYTE_CNT2_H
FBYTE_CNT3_H
FBYTE_CNT4_H
FBYTE_CNT5_H
FBYTE_CNT6_H
USB_SLP_EN
USB_IRQ_EN
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
Byte Count FIFO 2 Register [7:0]
Byte Count FIFO 3 Register [7:0]
Byte Count FIFO 4 Register [7:0]
Byte Count FIFO 5 Register [7:0]
Byte Count FIFO 6 Register [7:0]
Byte Count FIFO 0 Register [10:8]
Byte Count FIFO 1 Register [10:8]
Byte Count FIFO 2 Register [10:8]
Byte Count FIFO 3 Register [10:8]
Byte Count FIFO 4 Register [10:8]
Byte Count FIFO 5 Register [10:8]
Byte Count FIFO 6 Register [10:8]
Sleep Mode Control
Master Interrupt Enable
USB_IRQ_STAT
USB_BUS_STAT
PA_EN
Master Interrupt Status
USB Bus Reset Condition
Pair Addressing Enable
USB_DMA_ADL
USB_DMA_ADH
USB_DMA_PLR
USB_DMA_EAD
USB_DMA_TPL
USB_DMA_EN
DMA Address LO
DMA Address HI
DMA Packet Length Requested
DMA Target Endpoint Address
DMA Transferred Packet Length
DMA Enable
49
1643E–USB–06/03
USB_DMA_EN: Enable Register for the Tx or Rx DMA between the DPRMA and
the USB
Register Address:
Default State:
0x10A
0x00
Bit
7 - 2
1
Field
AVR
Description
Reserved
Reserved and set to 0
USB_RDMA_EN
W/R
W/R
Enables Receive DMA (for OUT EPs). This bit is
automatically cleared after the end of the DMA.
0
USB_TDMA_EN
Enables Transmit DMA (for IN EPs). This bit is
automatically cleared after the end of the DMA.
USB_DMA_TPL: USB DMA Transferred Packet Length.
Register Address:
Default State:
0x109
0x00
Bit
Field
TPL[7:0]
AVR
Description
7 - 0
R
Returns the number of bytes transferred during the
last DMA
USB_DMA_EAD: USB DMA Endpoint.
Register Address:
Default State:
0x108
0x00
Bit
Field
FDRA[7:0]
AVR
Description
7 - 0
W/R
The AVR writes the offset byte of FDRx address,
depending on the Endpoint that is going to send or
has received data:
The following Endpoints with the corresponding
offset bytes are supported by the DMA channels:
FDR1- 0xCE
FDR2- 0xCD
FDR3- 0xCC
FDR4- 0xCB
FDR5- 0xCA
FDR6- 0xC9
USB_DMA_PLR: USB DMA Packet Length Register
Register Address:
Default State:
0x107
0x00
Bit
Field
PLR[7:0]
AVR
Description
7 - 0
W/R
The AVR writes the number of bytes for the DMA that
follows.
50
AT76C711
1643E–USB–06/03
AT76C711
USB_DMA_ADH: USB DMA DPRAM Address High order bits
Register Address:
Default State:
0x106
0x00
Bit
Field
AVR
Description
7 - 3
2 - 0
Reserved
UDA[10:8]
W/R
These three bits along with the eight bits of the
USB_DMA_ADL forms the target address at the
DPRAM that the DMA channel will use
USB_DMA_ADL: USB DMA DPRAM Address Low order byte
Register Address:
Default State:
0x105
0x00
Bit
Field
AVR
W/R
Description
7 - 0
UDA[7:0]
The least significant byte of the target address at the
DPRAM that the DMA channel will use(1)
Note:
1. The 10 bit value formed by the previous two registers point at any location into the
DPRAM from 0 to 2048. In order to access the same position from the AVR, the Base
Address of the DPRAM (0x3000) should be added to the above location
PA_EN: USB Pair Addressing Enable
Register Address:
Default State:
0x104
0x00
Bit
Field
AVR
Description
7 - 4
3 - 1
Reserved
UPA[3:1]
W/R
The Endpoints EP1-EP6 use the USB physical addresses
1-7 respectively. By setting any of the these bits a pair of
EPs, consisting of one IN and one OUT EP, is formed as
follows:
UPA[1]: EP4 has the same USB Physical address with EP1
UPA[2]: EP5 has the same USB Physical Address with EP2
UPA[3]: EP6 has the same USB Physical Address with EP3
USB_BUS_STAT: USB Bus State
Register Address:
Default State:
0x103
0x00
Bit
7-4, 2-0
3
Field
AVR
Description
Reserved
USB_BUS_RES
R
This bit is set when the USB bus is in reset state
51
1643E–USB–06/03
USB_IRQ_STAT: USB IRQ Status bits
Register Address:
Default State:
0x102
0x00
Bit
7, 5-0
6
Field
AVR
Description
Reserved
USB_EP_IRQ
R/W
This bit is set when an interrupt from the EPs 6-0
is produced. The register is cleared by writing
0x0
USB_IRQ_EN: USB IRQ Enable bits
Register Address:
Default State:
0x101
0x00
Bit
Field
AVR
Description
7
USB_RES_IEN
W/R
When this bit is set, it enables the interrupt due to
a USB Bus Reset condition
6
USB_GINT_EN
W/R
USB Global Interrupt Enable: When this bit is set,
enables the interrupts for the all USB EPs
provided that the corresponding bits of the UIER
register have been set.
5-0
Reserved
USB_SLP_EN: USB Sleep mode Enable
Register Address:
Default State:
0x100
0x00
Bit
Field
AVR
Description
7-6, 4-
0
Reserved
5
USB_SLP_MOD
W/R
This bit is set to put the device into sleep mode
when a Suspend condition is detected
FRM_NUM_H: Frame Number High Register
Register Address:
Default State:
0x0FD
0x00
Bit
Field
AVR
Description
7 - 3
2 - 0
Reserved
FCH[10:8]
Reserved and set to 0
R
These are the upper 3 bits of the 11-bit frame
number of SOF packet.
52
AT76C711
1643E–USB–06/03
AT76C711
FRM_NUM_L: Frame Number Low Register
Register Address:
Default State:
0x0FC
0x00
Bit
Field
FCL[7:0]
AVR
Description
7 - 0
R
These are the lower 8 bits of the 11-bit frame number
of SOF packet.
Global State Register
Register Address:
Default State:
0x0FB
0000000000b
Bit
4 - 7
3
Field
AVR
Description
Reserved
RSMINPR
Reserved
R
Set by USB Hardware when a Resume is sent in the
USB bus during remote wake-up feature (13 ms).
2
1
RMWUPE
CONFG
W/R
W/R
Remote Wake-up Enable. This bit is set if the host
enables the function’s remote wake-up feature.
Configured. This bit is set by the firmware after a valid
SET_CONFIGURATION request is received. It is
cleared by a reset or by a SET_CONFIGURATION
with a value of 0.
0
FADD
Enable
W/R
Function Address Enable. This bit is set by firmware
after the status phase of a SET_ADDRESS request
transaction. The host will use the new address,
starting at the next transaction.
53
1643E–USB–06/03
SPRSR: Suspend/Resume Register
Register Address:
Default State:
0x0FA
xxxxx000b
Bit
7
Field
AVR
Description
Reserved
Reserved
Reserved
Reserved
SOF INT
6
5
4
3
R
R
Start of Frame (SOF) Interrupt. A write on this bit
clears the SOF interrupt
2
EXT RSM
Received External Resume. The USB Hardware
sets this bit to denote an External Resume
Interrupt. If RMWUPE = 1, a RESUME signal is
sent in USB bus.
1
0
RCVD RSM
SUSP
R
R
Received Resume. The USB Hardware sets this
bit when a USB resume signaling is detected at
its port.
Suspend. The USB Hardware sets this bit when it
detects no SOF for 3 ms. The USB macro enters in
SUSPEND mode, the processor has to go in
SLEEP mode.
SPRSIE: Suspend/Resume Interrupt Enable Register
Register Address:
Default State:
0x0F9
xxxxx000b
Bit
7
Field
AVR
Description
Reserved
Reserved
Reserved
Reserved
SOF IE
6
5
4
3
W/R
W/R
Enable SOF Interrupt
2
EXTRSM IE
Enable External Resume Signaling Interrupt:
1 = enable, 0 = disable
1
0
RCVDRSM IE
SUSP IE
W/R
W/R
Enable BUS Resume Signaling Interrupt:
1 = enable, 0 = disable
Enable Suspend Signaling Interrupt: 1 = enable,
0 = disable
54
AT76C711
1643E–USB–06/03
AT76C711
UISR – USB Interrupt Status Register
Register Address:
Default State:
0x0F7
0x00
Bit
Field
AVR
Description
7
6
5
4
3
2
1
0
Reserved
EP6 INT
EP5 INT
EP4 INT
EP3 INT
EP2 INT
EP1 INT
EP0 INT
R/
R
Endpoint 6 Interrupt
Endpoint 5 Interrupt
Endpoint 4 Interrupt
Endpoint 3 Interrupt
Endpoint 2 Interrupt
Endpoint 1 Interrupt
Endpoint 0 Interrupt
R
R
R
R/
R/\
The function interrupt bits will be set by the USB Hardware whenever the following bits
in the corresponding endpoint’s Control and Status registers are modified by the USB
Hardware:
1. RX OUT Packet
is set
(Control and OUT endpoints)
2. TX Packet Ready is cleared (Control and IN endpoints)
3. RX SETUP
is set
is set
(Control endpoints only)
(Control endpoints only)
4. TX Complete
UIAR – USB Interrupt Acknowledge Register
The bits in this register are used to indirectly clear the bits of the UISR. A bit in the UISR
is cleared if a “1” is written in the corresponding bit of UIAR.
Register Address:
Default State:
0x0F5
0x00
Bit
Field
AVR
Description
7
6
5
4
3
2
1
0
Reserved
EP6 INTA
EP5 INTA
EP4 INTA
EP3 INTA
EP2 INTA
EP1 INTA
EP0 INTA
W
W
W
W
W
W
W
Endpoint 6 Interrupt Acknowledge
Endpoint 5 Interrupt Acknowledge
Endpoint 4 Interrupt Acknowledge
Endpoint 3 Interrupt Acknowledge
Endpoint 2 Interrupt Acknowledge
Endpoint 1 Interrupt Acknowledge
Endpoint 0 Interrupt Acknowledge
55
1643E–USB–06/03
UIER – USB Interrupt Enable Register
Register Address:
Default State:
0x0F3
0x00
The bits in this register have the following meaning:
1 = enable interrupt
0 = disable interrupt
Bit
7
Field
AVR
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Description
SOF IE
EP6 IE
EP5 IE
EP4 IE
EP3 IE
EP2 IE
EP1 IE
EP0 IE
Enable SOF Interrupt
6
Enable Endpoint 6 Interrupt
Enable Endpoint 5 Interrupt
Enable Endpoint 4 Interrupt
Enable Endpoint 3 Interrupt
Enable Endpoint 2 Interrupt
Enable Endpoint 1 Interrupt
Enable Endpoint 0 Interrupt
5
4
3
2
1
0
Function Address Register
The FIU contains an address register that contains the function address assigned by the
host. This Function Address Register must be programmed by the processor once it has
received a SET_ADDRESS command from the host and has completed the status
phase of the transaction. After power up or reset, this register will contain the value of
0x00.
The function enable bit (FEN) allows the firmware to enable or disable the function end-
points. The firmware will set this bit after receipt of a reset through the USB Hardware.
Once this bit is set, the USB Hardware passes packets to and from the host.
Register Address:
Default State:
0x0F2
0x00
Bit
7
Field
AVR
W/R
W/R
Description
FEN
Function Enable
Function Address
6 - 0
FADD[6:0]
56
AT76C711
1643E–USB–06/03
AT76C711
ENDPPGPG: Endpoint Ping-pong Enable Register
Register Address:
Default State:
0x0F2
0x00
Bit
7
Field
AVR
Description
Reserved
6
PG PG 6 EN
PG PG 5 EN
PG PG 4 EN
PG PG 3 EN
PG PG 2 EN
PG PG 1 EN
PG PG 0 EN
W
W
W
W
W
W
W
Enable Endpoint 6 Ping-pong
Enable Endpoint 5 Ping-pong
Enable Endpoint 4 Ping-pong
Enable Endpoint 3 Ping-pong
Enable Endpoint 2 Ping-pong
Enable Endpoint 1 Ping-pong
Enable Endpoint 0 Ping-pong
5
4
3
2
1
0
Endpoint Control Register
Register Address:
0x0EF, ENDP0_CNTR Endpoint0
0x0EE, ENDP1_CNTR Endpoint1
0x0ED, ENDP2_CNTR Endpoint2
0x0EC, ENDP3_CNTR Endpoint3
0x0EB, ENDP4_CNTR Endpoint4
0x0EA, ENDP5_CNTR Endpoint5
0x0E9, ENDP6_CNTR Endpoint6
Default State:
0x000000b
Bit
Field
AVR
Description
7
EPEDS
W/R
Endpoint Enable/Disable
(0 = Disable Endpoint, 1 = Enable Endpoint)
6
Reserved
Reserved
Reserved
4 - 5
Reserved
and set to 0
3
2
DTGLE
EPDIR
R
Data Toggle. Identifies DATA0 or DATA1 packets.
Endpoint Direction.
W/R
Only applicable for non-control endpoints
(0 = Out, 1 = In).
1 - 0
EPTYPE
W/R
Endpoint Type.
These bits represent the type of the endpoint as
follows:
Bit1Bit0
Type
0
0
1
1
0
1
0
1
Control
Isochronous
Bulk
Interrupt
57
1643E–USB–06/03
Endpoint Control and Status Register
Register Address: 0x0DF, FCSR0 Endpoint0
0x0DE, FCSR1 Endpoint1
0x0DD, FCSR2 Endpoint2
0x0DC, FCSR3 Endpoint3
0x0DB, FCSR4 Endpoint4
0x0DA, FCSR5 Endpoint5
0x0D9, FCSR6 Endpoint6
Default State:
00000000b
Bit
Field
AVR
Description
7
Control
Direction
W/R
Set by the processor to indicate to the USB Hardware
the direction of a control transfer.
0 = control write (no data stage)
1 = control read
This bit is used by control endpoints only.
6
5
4
Data End
W/R
W/R
W/R
Indicate that the processor has placed the last data
packet in FIFO0, or that the processor has processed
the last data packet it expects from the host.
Force Stall
Set by the processor to indicate a stalled endpoint. The
USB Hardware will send a STALL handshake as a
response to the next IN or OUT token.
TX Packet
Ready
Indicates that the processor has loaded the FIFO with a
packet of data. This bit is cleared by USB Hardware
after the USB host acknowledges the packet. For ISO
endpoints, this bit is cleared unconditionally after the
data is sent.
3
2
Stall Snd
R/C
R/C
The USB Hardware sets this bit after a STALL is sent to
the host.
Indicates end of data stage for the control endpoint only.
RX SETUP
The USB Hardware sets this bit when it receives a valid
setup packet from the host. This bit is used by control
endpoints only.
1
0
RX OUT
Packet
R/C
Indicates that the USB Hardware has decoded an OUT
token and that the data is in the FIFO.
TX
Complete
W/R
The USB Hardware sets this bit to indicate to a control
endpoint that it has received an ACK handshake from
the host.
58
AT76C711
1643E–USB–06/03
AT76C711
• Bit 7 – Control Direction
This bit is used by control endpoints only and is used by firmware to indicate the direc-
tion of a control transfer. It is written by the firmware after it receives a RX SETUP
Interrupt. The USB Hardware uses this bit to determine the status phase of a control
transfer.
• Bit 6 –Data End
This bit is used only by control endpoints together with bit 1 (TX Packet Ready) to signal
the USB Hardware to go to the STATUS phase after the packet currently residing in the
FIFO is transmitted.
After the USB Hardware completes the STATUS phase, it will interrupt the processor
without clearing this bit.
Caution:
Since the data end bit signals “END OF TRANSACTION”, any other endpoint controller
bit set after the DATA END is not considered by the ping-pong controller. That is why
Tx_Packet Ready should be set before Data_End.
• Bit 5 – Force Stall
The processor sets this bit if it wants to force a STALL if an unsupported request is
received or if the host continues to ask for data after the data is exhausted. This bit
should be set at the end of any data phase or setup phase.
• Bit 4 – TX Packet Ready
This bit is used for the following operations:
1. Control read transactions by a control endpoint
2. IN transactions with DATA1 PID to complete the status phase for a control end-
point, when this bit is “0”, but bit Data End (bit 4) is “1”
3. By a BULK IN or ISO IN or INT IN endpoint
The processor should write into the FIFO only if this bit is cleared. After it has completed
writing the data, it should set this bit. The data can be of zero length. For a control end-
point, the processor should write to the FIFO only while bit 6 (TX Packet Requested) is
set. The USB Hardware clears this bit after it receives an ACK. If the interrupt is
enabled, clearing this bit by the USB Hardware causes an interrupt to the processor.
• Bit 3 – Stall Snd
The USB Hardware sets this bit after a STALL has been sent. The firmware uses this bit
when responding to a USB GetStatus request.
• Bit 2 – RX SETUP
This bit is used by control endpoints only to signal to the processor that the USB Hard-
ware has received a valid SETUP packet and that the data portion of the packet is
stored in the FIFO. The USB Hardware will clear all other bits in this register and will set
RX SETUP. If the corresponding interrupt is enabled, the processor will be interrupted
when RX SETUP is set. After the completion of reading the data from the FIFO, the firm-
ware should clear this bit.
59
1643E–USB–06/03
• Bit 1 – RX OUT Packet
The USB Hardware sets this bit after it has stored the data of an OUT transaction in the
FIFO. While this bit is set, the USB Hardware will NAK all OUT tokens. For control end-
points only, bit 7 of this register, Enable Control Write, has to be set for the USB
Hardware to accept the OUT data. The USB Hardware will not overwrite the data in the
FIFO except for an early USB setup request. Bit RX OUT Packet is used for the follow-
ing operations:
1. Control write transactions by a control endpoint.
2. OUT transaction with DATA1 PID to complete the status phase of a control
endpoint.
3. By a BULK OUT or ISO OUT or INT OUT endpoint.
Setting this bit causes an interrupt to the processor if the interrupt is enabled. The firm-
ware clears this bit after the FIFO are read.
• Bit 0 – TX Complete
This bit is used by USB Hardware in a control endpoint to signal to the processor that it
has successfully completed certain transactions. TX Complete is set at the completion
of a:
1. Control read data stage
2. Status stage without data stage
3. Status stage after a control write transaction
FIFO Data Registers
These are dual function buffer registers. Received data are read by the processor from
the endpoint’s FIFO through these data registers. In the transmit mode, the processor
writes to the FIFO through this register.
Register Address:
0x0CF, FDR0 Function Endpoint0
0x0CE, FDR1 Function Endpoint1
0x0CD, FDR2 Function Endpoint2
0x0CC, FDR3 Function Endpoint3
0x0CB, FDR4 Function Endpoint4
0x0CA, FDR5 Function Endpoint5
0x0C9, FDR6 Function Endpoint6
Default State:
00000000b
Bit
Field
AVR
W/R
Description
7 - 0
FIFO
DATA[7:0]
Data to be written to FIFO or data to be read from the
FIFO
60
AT76C711
1643E–USB–06/03
AT76C711
Byte Count Registers
Each endpoint has a register that stores the number of bytes received by the USB
Hardware.
Register Address:
0x0BF, FBYTE_CNT0_L Endpoint0
0x0BE, FBYTE_CNT1_L Endpoint1
0x0BD, FBYTE_CNT2_L Endpoint2
0x0BC, FBYTE_CNT3_L Endpoint3
0x0BB, FBYTE_CNT4_L Endpoint4
0x0BA, FBYTE_CNT5_L Endpoint5
0x0B9, FBYTE_CNT6_L Endpoint6
0x0AF, FBYTE_CNT0_H Endpoint0
0x0AE, FBYTE_CNT1_H Endpoint1
0x0AD, FBYTE_CNT2_H Endpoint2
0x0AC, FBYTE_CNT3_H Endpoint3
0x0AB, FBYTE_CNT4_H Endpoin4
0x0AA, FBYTE_CNT5_H Endpoint5
0x0A9, FBYTE_CNT6_H Endpoint6
00000000b
Default State:
FBYTE_CNT_L
Bit
Field
BYTCT[7:0]
AVR
Description
7 - 0
R
Length of data packet in FIFO
FBYTE_CNT_H
Bit
Field
AVR
Description
7 - 3
2 - 0
2 - 0
Reserved
BYTCT[10:8]
ENDSZ[10:8]
Reserved Reserved
R
R
Length of data packet in FIFO
Endpoint Size [10:8]
61
1643E–USB–06/03
Electrical Characteristics
Absolute Maximum Ratings*
*NOTICE:
Stresses beyond those listed under “Absolute
Maximum Ratings” may cause permanent dam-
age to the device. This is a stress rating only
and functional operation of the device at these or
other conditions beyond those indicated in the
operational sections of this specification is not
implied. Exposure to absolute maximum rating
conditions for extended periods may affect device
reliability.
Operating Temperature......................................................TBD
Storage Temperature.........................................................TBD
Voltage on Any Pin
with Respect to Ground........................................3.0V to 3.6V
Maximum Operating Voltage ............................................ 3.7V
DC Output Current...................................................... 16.0 mA
DC Characteristics
The values shown in this table are valid for TA = 0°C to 85°C, VCC = 3.3V unless otherwise noted.
Power Supply
Symbol
VCC
Parameter
Condition
Min
Max
3.3
Unit
V
Power Supply
ICC
Supply Current
50.0
200.0
mA
µA
ICCS
Suspended Device Current
USB Signals: DP, DM
Symbol
ILO
Parameter
Condition
Min
-10.0
0.2
Max
Unit
µA
V
High-Z Data Line Leakage
Differential Input Sensitivity
Differential Common Mode Range
Single-ended Receiver Threshold
Output Signal Crossover
Static Output Low
0V < VIN < 3.3V
DPx and DMx
+10.0
VDI
VCM
0.8
2.5
2.0
2.0
0.3
V
VSE
0.8
V
VCRS
VOL1
VOH1
Except first transition from idle state
RL of 15 kΩ to 3.6V
1.3
V
V
Static Output High
RL of 15 kΩ to GND
Oscillator Signals: OSC1, OSC2
Symbol
VLH
Parameter
Condition
Min
0.47
0.67
Max
1.20
1.44
9.0
Unit
V
OSC1 Switching Level
OSC1 Switching Level
Input Capacitance, OSC1
Output Capacitance, OSC2(1)
OSC1/2 Capacitance
Start-up Time
VHL
V
CX1
pF
pF
pF
ms
CX2
9.0
C12
1.0
tSU
6 MHz, fundamental
2.0
Note:
1. OSC2 must not be used to drive other circuitry.
62
AT76C711
1643E–USB–06/03
AT76C711
AC Characteristics
DP, DM Driver Characteristics
Symbol
tR
Parameter
Condition
CL = 50 pF
CL = 50 pF
Min
4.0
Max
20.0
20.0
110.0
2.0
Unit
ns
ns
%
Rise Time
tF
Fall Time
4.0
tRFM
VCRS
tR/tF Matching
90.0
1.3
Output Signal Crossover
Driver Output Resistance
Except first transition from idle state
Steady-state drive
V
(1)
ZDRV
29.0
44.0
W
Note:
1. With external 27W series resistor.
DP, DM Data Source Timings
Symbol
tDRATE
tFRAME
tDJ1
Parameter
Condition
Min
11.97
0.9995
-3.5
Max
12.03
1.0005
3.5
Unit
Mbps
ms
Full-speed Data Rate
Frame Interval
Average Bit Rate
ns
Source Differential Driver Jitter to Next
Transition for Paired Transitions
tDJ2
-4.0
4.0
ns
Source Jitter for Differential Transition
to SE0 Transition
-2.0
5.0
ns
tFDEOP
tFEOPT
tFEOPR
tJR1
Source SE0 Interval of EOP
Receiver SE0 Interval of EOP
160.0
82.0
-18.5
-9.0
175.0
ns
ns
ns
ns
ns
18.5
9.0
Receiver Data Jitter Tolerance to Next
Transition for Paired Transitions
tJR2
Width of SE0 Interval during
Differential Transition
14.0
tFST
63
1643E–USB–06/03
Packaging Information
64T2 – TQFP
D
D1
XX
E1
E
e
b
N
BOTTOM VIEW
TOP VIEW
SIDE VIEW
A2
A1
L
COMMON DIMENSIONS
(Unit of Measure = mm)
MIN
MAX
NOM
NOTE
SYMBOL
A1
A2
D
D1
E
0.05
0.15 5
1. The top package body size may be smaller than the bottom package size by as
much as 0.15mm.
2. Dimensions D1 and E1 do not include mold protrusions. Allowable protrusion is
0.25 mm per side. D1 and E1 are maximum plastic body size dimensions including
mold mismatch.
3. Dimension b does not include dambar protrusion. Allowable dambar protrusion
shall not cause the lead width to exceed the maxium b dimension by more than
0.08 mm. Dambar cannot be located on the lower radius or the foot. Minimum
space between protrusion and an adjacent lead is 0.07 mm for 0.4 and 0.5 mm
pitch packages.
0.95 1.00 1.05
12.00 BSC
10.00 BSC
12.00 BSC
10.00 BSC
0.50 BSC
2,1
2,1
E1
e
4. These dimensions apply to the flat section of the lead between 0.10 mm and
0.25 mm from the lead tip.
5. A1 is defined as the distance from the seating place to the lowest boint on the
package body.
b
L1
0.17 0.22 0.27 3,4
1.00 REF
This drawing is for general information only. Refer to
JEDEC Drawing MS-026, Variation ACD for additional
information.
6/03/03
TITLE
DRAWING NO.
REV.
1150 E. Cheyenne Mtn. Blvd.
Colorado Springs, CO 80906
64T2, 64-lead, 10x10x1.0 mm Body, Thin Plastic
Quad Flat Pack (TQFP)
PO64T2
A
R
64
AT76C711
1643E–USB–06/03
AT76C711
64C1 – LFBGA
Z
0.10 4X
X
0.12
Z
A
A1 BALL PAD CORNER
A1
D
b
Y
Ø0.15 M
Ø0.08 M
Z
Z
X
Y
E
SEATING PLANE
A2
TOP VIEW
SIDE VIEW
A1 BALL PAD CORNER
e
8
7
6
5
4
3
2
1
A
COMMON DIMENSIONS
(Unit of Measure = mm)
B
C
D
E
F
MIN
MAX
NOM
NOTE
SYMBOL
D
8.00 BSC
E
8.00 BSC
G
H
A
–
–
1.70
–
3
3
A1
A2
e
0.25
0.85
–
–
–
e
0.80 BSC
0.50
1.20 REF
b
0.45
0.55
4
BOTTOM VIEW
Notes:
1. This drawing is for general information only. Refer to JEDEC Drawing
MO-205, Variation BA, for proper dimensions, tolerances, datums, etc.
2. Array as seen from the bottom of the package.
3. Dimension A includes standoff height A1, package body thickness, and lid height,
but does not include attached features.
4. Dimension b is measured at the maximum ball diameter, parallel to primary
datum C.
11/7/02
DRAWING NO. REV.
64C1
TITLE
2325 Orchard Parkway
64C1, 64-ball (8 x 8 Array),0.80 mm Pitch, 8.0 x 8.0 x 1.70 mm,
2-layer, Low Profile, Fine-Pitch, Ball Grid Array Package (LFBGA)
A
R
San Jose, CA 95131
65
1643E–USB–06/03
Atmel Headquarters
Atmel Operations
Corporate Headquarters
2325 Orchard Parkway
San Jose, CA 95131
USA
TEL 1(408) 441-0311
FAX 1(408) 487-2600
Memory
RF/Automotive
Theresienstrasse 2
Postfach 3535
74025 Heilbronn, Germany
TEL (49) 71-31-67-0
FAX (49) 71-31-67-2340
2325 Orchard Parkway
San Jose, CA 95131
TEL 1(408) 441-0311
FAX 1(408) 436-4314
Microcontrollers
Europe
Atmel Sarl
2325 Orchard Parkway
San Jose, CA 95131
TEL 1(408) 441-0311
FAX 1(408) 436-4314
1150 East Cheyenne Mtn. Blvd.
Colorado Springs, CO 80906
TEL 1(719) 576-3300
Route des Arsenaux 41
Case Postale 80
CH-1705 Fribourg
Switzerland
TEL (41) 26-426-5555
FAX (41) 26-426-5500
FAX 1(719) 540-1759
Biometrics/Imaging/Hi-Rel MPU/
High Speed Converters/RF Datacom
Avenue de Rochepleine
La Chantrerie
BP 70602
44306 Nantes Cedex 3, France
TEL (33) 2-40-18-18-18
FAX (33) 2-40-18-19-60
BP 123
Asia
Room 1219
Chinachem Golden Plaza
77 Mody Road Tsimshatsui
East Kowloon
Hong Kong
TEL (852) 2721-9778
FAX (852) 2722-1369
38521 Saint-Egreve Cedex, France
TEL (33) 4-76-58-30-00
FAX (33) 4-76-58-34-80
ASIC/ASSP/Smart Cards
Zone Industrielle
13106 Rousset Cedex, France
TEL (33) 4-42-53-60-00
FAX (33) 4-42-53-60-01
1150 East Cheyenne Mtn. Blvd.
Colorado Springs, CO 80906
TEL 1(719) 576-3300
Japan
9F, Tonetsu Shinkawa Bldg.
1-24-8 Shinkawa
Chuo-ku, Tokyo 104-0033
Japan
TEL (81) 3-3523-3551
FAX (81) 3-3523-7581
FAX 1(719) 540-1759
Scottish Enterprise Technology Park
Maxwell Building
East Kilbride G75 0QR, Scotland
TEL (44) 1355-803-000
FAX (44) 1355-242-743
e-mail
literature@atmel.com
Web Site
http://www.atmel.com
© Atmel Corporation 2003.
Atmel Corporation makes no warranty for the use of its products, other than those expressly contained in the Company’s standard warranty
which is detailed in Atmel’s Terms and Conditions located on the Company’s web site. The Company assumes no responsibility for any errors
which may appear in this document, reserves the right to change devices or specifications detailed herein at any time without notice, and does
not make any commitment to update the information contained herein. No licenses to patents or other intellectual property of Atmel are granted
by the Company in connection with the sale of Atmel products, expressly or by implication. Atmel’s products are not authorized for use as critical
components in life support devices or systems.
ATMEL®, DataFlash® and AVR® are the registered trademarks of Atmel.
Other terms and product names may be the trademarks of others.
Printed on recycled paper.
1643E–USB–06/03
xM
相关型号:
AT76CL610
AT76CL610 Specification Preliminary [Updated 06/03. 21 Pages] Dual 6-bit 1 Gsps ADC with low power dissipation
ETC
AT76CL610-10AC
ADC, Successive Approximation, 6-Bit, 2 Func, 1 Channel, Parallel, 8 Bits Access, BICMOS, PQFP80
MICROCHIP
AT76CL610-10AI
ADC, Successive Approximation, 6-Bit, 2 Func, 1 Channel, Parallel, 8 Bits Access, BICMOS, PQFP80, TQFP-80
ATMEL
AT76CL610-10AI
ADC, Successive Approximation, 6-Bit, 2 Func, 1 Channel, Parallel, 8 Bits Access, BICMOS, PQFP80
MICROCHIP
AT76CL610-10AX
ADC, Successive Approximation, 6-Bit, 2 Func, 1 Channel, Parallel, 8 Bits Access, BICMOS, PQFP80, TQFP-80
ATMEL
©2020 ICPDF网 联系我们和版权申明