- •Features
- •Pin Configurations
- •Overview
- •Block Diagram
- •Pin Descriptions
- •Port A (PA2..PA0)
- •Port B (PB7..PB0)
- •Port D (PD6..PD0)
- •RESET
- •XTAL1
- •XTAL2
- •Disclaimer
- •AVR CPU Core
- •Introduction
- •Architectural Overview
- •Status Register
- •Stack Pointer
- •Interrupt Response Time
- •SRAM Data Memory
- •Data Memory Access Times
- •EEPROM Data Memory
- •EEPROM Read/Write Access
- •Atomic Byte Programming
- •Split Byte Programming
- •Erase
- •Write
- •I/O Memory
- •General Purpose I/O Registers
- •Clock Systems and their Distribution
- •Clock Sources
- •Default Clock Source
- •Crystal Oscillator
- •External Clock
- •Idle Mode
- •Power-down Mode
- •Standby Mode
- •Analog Comparator
- •Brown-out Detector
- •Internal Voltage Reference
- •Watchdog Timer
- •Port Pins
- •Resetting the AVR
- •Reset Sources
- •Power-on Reset
- •External Reset
- •Brown-out Detection
- •Watchdog Reset
- •Watchdog Timer
- •Interrupts
- •I/O-Ports
- •Introduction
- •Configuring the Pin
- •Toggling the Pin
- •Reading the Pin Value
- •Alternate Port Functions
- •Alternate Functions of Port A
- •Alternate Functions of Port B
- •Alternate Functions of Port D
- •Register Description for I/O-Ports
- •External Interrupts
- •8-bit Timer/Counter0 with PWM
- •Overview
- •Registers
- •Definitions
- •Counter Unit
- •Output Compare Unit
- •Force Output Compare
- •Modes of Operation
- •Normal Mode
- •Fast PWM Mode
- •Phase Correct PWM Mode
- •Internal Clock Source
- •Prescaler Reset
- •External Clock Source
- •16-bit Timer/Counter1
- •Overview
- •Registers
- •Definitions
- •Compatibility
- •Counter Unit
- •Input Capture Unit
- •Input Capture Trigger Source
- •Noise Canceler
- •Using the Input Capture Unit
- •Output Compare Units
- •Force Output Compare
- •Modes of Operation
- •Normal Mode
- •Fast PWM Mode
- •Phase Correct PWM Mode
- •USART
- •Overview
- •Clock Generation
- •External Clock
- •Synchronous Clock Operation
- •Frame Formats
- •Parity Bit Calculation
- •USART Initialization
- •Sending Frames with 5 to 8 Data Bit
- •Sending Frames with 9 Data Bit
- •Parity Generator
- •Disabling the Transmitter
- •Receiving Frames with 5 to 8 Data Bits
- •Receiving Frames with 9 Data Bits
- •Receiver Error Flags
- •Parity Checker
- •Disabling the Receiver
- •Flushing the Receive Buffer
- •Asynchronous Data Recovery
- •Using MPCM
- •Overview
- •Functional Descriptions
- •Three-wire Mode
- •SPI Slave Operation Example
- •Two-wire Mode
- •Start Condition Detector
- •Alternative USI Usage
- •4-bit Counter
- •12-bit Timer/Counter
- •Software Interrupt
- •Analog Comparator
- •debugWIRE On-chip Debug System
- •Features
- •Overview
- •Physical Interface
- •Software Break Points
- •Limitations of debugWIRE
- •debugWIRE Related Register in I/O Memory
- •Performing a Page Write
- •Reading the Fuse and Lock Bits from Software
- •Preventing Flash Corruption
- •Fuse Bits
- •Latching of Fuses
- •Signature Bytes
- •Calibration Byte
- •Page Size
- •Signal Names
- •Parallel Programming
- •Enter Programming Mode
- •Chip Erase
- •Programming the Flash
- •Programming the EEPROM
- •Reading the Flash
- •Reading the EEPROM
- •Programming the Lock Bits
- •Reading the Signature Bytes
- •Reading the Calibration Byte
- •Serial Downloading
- •Electrical Characteristics
- •Absolute Maximum Ratings*
- •DC Characteristics
- •External Clock Drive Waveforms
- •External Clock Drive
- •Active Supply Current
- •Idle Supply Current
- •Power-down Supply Current
- •Standby Supply Current
- •Pin Pull-up
- •Pin Driver Strength
- •Internal Oscillator Speed
- •Register Summary
- •Instruction Set Summary
- •Ordering Information
- •Packaging Information
- •Errata
- •ATtiny2313 Rev B
- •ATtiny2313 Rev A
- •Changes from Rev. 2514F-08/04 to Rev. 2514G-10/04
- •Changes from Rev. 2514F-08/04 to Rev. 2514G-10/04
- •Changes from Rev. 2514E-04/04 to Rev. 2514F-08/04
- •Changes from Rev. 2514D-03/04 to Rev. 2514E-04/04
- •Changes from Rev. 2514C-12/03 to Rev. 2514D-03/04
- •Changes from Rev. 2514B-09/03 to Rev. 2514C-12/03
- •Changes from Rev. 2514A-09/03 to Rev. 2514B-09/03
- •Table of Contents
ATtiny2313/V
Programming the EEPROM The EEPROM is organized in pages, see Table 70 on page 161. When programming the EEPROM, the program data is latched into a page buffer. This allows one page of data to be programmed simultaneously. The programming algorithm for the EEPROM data memory is as follows (refer to “Programming the Flash” on page 165 for details on Command, Address and Data loading):
1.A: Load Command “0001 0001”.
2.G: Load Address High Byte (0x00 - 0xFF).
3.B: Load Address Low Byte (0x00 - 0xFF).
4.C: Load Data (0x00 - 0xFF).
J:Repeat 3 through 4 until the entire buffer is filled.
K:Program EEPROM page
1.Set BS to “0”.
2.Give WR a negative pulse. This starts programming of the EEPROM page. RDY/BSY goes low.
3.Wait until to RDY/BSY goes high before programming the next page (See Figure 72 for signal waveforms).
Figure 72. Programming the EEPROM Waveforms
|
|
|
|
|
|
|
K |
|
|
|
A |
G |
B |
C |
E |
B |
C |
E |
L |
DATA |
0x11 |
ADDR. HIGH |
ADDR. LOW |
DATA |
XX |
ADDR. LOW |
DATA |
XX |
|
|
|
|
|
|
|
|
|
|
|
XA1 |
|
|
|
|
|
|
|
|
|
XA0 |
|
|
|
|
|
|
|
|
|
BS1 |
|
|
|
|
|
|
|
|
|
XTAL1 |
|
|
|
|
|
|
|
|
|
WR |
|
|
|
|
|
|
|
|
|
RDY/BSY |
|
|
|
|
|
|
|
|
|
RESET +12V |
|
|
|
|
|
|
|
|
|
OE |
|
|
|
|
|
|
|
|
|
PAGEL |
|
|
|
|
|
|
|
|
|
BS2 |
|
|
|
|
|
|
|
|
|
Reading the Flash |
The algorithm for reading the Flash memory is as follows (refer to “Programming the |
|||||
|
Flash” on page 165 for details on Command and Address loading): |
|||||
|
1. |
A: Load Command “0000 0010”. |
||||
|
2. |
G: Load Address High Byte (0x00 - 0xFF). |
||||
|
3. |
B: Load Address Low Byte (0x00 - 0xFF). |
||||
|
4. |
Set |
|
|
|
to “0”, and BS1 to “0”. The Flash word low byte can now be read at DATA. |
|
OE |
|||||
|
5. |
Set BS to “1”. The Flash word high byte can now be read at DATA. |
||||
|
6. |
Set |
|
to “1”. |
||
|
OE |
167
2543H–AVR–02/05
Reading the EEPROM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The algorithm for reading the EEPROM memory is as follows (refer to “Programming the |
||||||||||||||||||
|
Flash” on page 165 for details on Command and Address loading): |
|||||||||||||||||
|
1. |
A: Load Command “0000 0011”. |
||||||||||||||||
|
2. |
G: Load Address High Byte (0x00 - 0xFF). |
||||||||||||||||
|
3. |
B: Load Address Low Byte (0x00 - 0xFF). |
||||||||||||||||
|
4. |
Set |
|
|
|
|
to “0”, and BS1 to “0”. The EEPROM Data byte can now be read at |
|||||||||||
|
OE |
|||||||||||||||||
|
|
DATA. |
||||||||||||||||
|
5. |
Set |
|
|
|
to “1”. |
||||||||||||
|
OE |
|||||||||||||||||
Programming the Fuse Low |
The algorithm for programming the Fuse Low bits is as follows (refer to “Programming |
|||||||||||||||||
Bits |
the Flash” on page 165 for details on Command and Data loading): |
|||||||||||||||||
|
1. |
A: Load Command “0100 0000”. |
||||||||||||||||
|
2. |
C: Load Data Low Byte. Bit n = “0” programs and bit n = “1” erases the Fuse bit. |
||||||||||||||||
|
3. |
Give |
|
|
|
|
|
|
to go high. |
|||||||||
|
WR |
a negative pulse and wait for RDY/BSY |
||||||||||||||||
Programming the Fuse High |
The algorithm for programming the Fuse High bits is as follows (refer to “Programming |
|||||||||||||||||
Bits |
the Flash” on page 165 for details on Command and Data loading): |
|||||||||||||||||
|
1. |
A: Load Command “0100 0000”. |
||||||||||||||||
|
2. |
C: Load Data Low Byte. Bit n = “0” programs and bit n = “1” erases the Fuse bit. |
||||||||||||||||
|
3. |
Set BS1 to “1” and BS2 to “0”. This selects high data byte. |
||||||||||||||||
|
4. |
Give |
|
|
|
|
|
|
to go high. |
|||||||||
|
WR |
a negative pulse and wait for RDY/BSY |
||||||||||||||||
|
5. |
Set BS1 to “0”. This selects low data byte. |
||||||||||||||||
Programming the Extended |
The algorithm for programming the Extended Fuse bits is as follows (refer to “Program- |
|||||||||||||||||
Fuse Bits |
ming the Flash” on page 165 for details on Command and Data loading): |
|||||||||||||||||
|
1. |
1. A: Load Command “0100 0000”. |
||||||||||||||||
|
2. |
2. C: Load Data Low Byte. Bit n = “0” programs and bit n = “1” erases the Fuse |
||||||||||||||||
|
|
bit. |
||||||||||||||||
|
3. |
3. Set BS1 to “0” and BS2 to “1”. This selects extended data byte. |
||||||||||||||||
|
4. |
4. Give |
|
|
|
to go high. |
||||||||||||
|
WR |
a negative pulse and wait for RDY/BSY |
||||||||||||||||
|
5. |
5. Set BS2 to “0”. This selects low data byte. |
Figure 73. Programming the FUSES Waveforms
|
|
|
Write Fuse Low byte |
|
|
Write Fuse high byte |
|
|
Write Extended Fuse byte |
|
A |
C |
|
A |
C |
|
A |
C |
|
DATA |
0x40 |
DATA |
XX |
0x40 |
DATA |
XX |
0x40 |
DATA |
XX |
|
|
|
|
|
|
|
|
|
XA1
XA0
BS1
BS2
XTAL1
WR
RDY/BSY
RESET +12V
OE
PAGEL
168 ATtiny2313/V
2543H–AVR–02/05
ATtiny2313/V
Programming the Lock Bits The algorithm for programming the Lock bits is as follows (refer to “Programming the Flash” on page 165 for details on Command and Data loading):
1.A: Load Command “0010 0000”.
2.C: Load Data Low Byte. Bit n = “0” programs the Lock bit. If LB mode 3 is programmed (LB1 and LB2 is programmed), it is not possible to program the Boot Lock bits by any External Programming mode.
3.Give WR a negative pulse and wait for RDY/BSY to go high.
The Lock bits can only be cleared by executing Chip Erase.
Reading the Fuse and Lock |
The algorithm for reading the Fuse and Lock bits is as follows (refer to “Programming |
|||||||||||||||||||||||||
Bits |
the Flash” on page 165 for details on Command loading): |
|||||||||||||||||||||||||
|
1. |
A: Load Command “0000 0100”. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
2. |
Set |
|
|
|
|
|
to “0”, BS2 to “0” and BS1 to “0”. The status of the Fuse Low bits can |
||||||||||||||||||
|
OE |
|||||||||||||||||||||||||
|
|
now be read at DATA (“0” means programmed). |
||||||||||||||||||||||||
|
3. |
Set |
|
|
|
|
to “0”, BS2 to “1” and BS1 to “1”. The status of the Fuse High bits can |
|||||||||||||||||||
|
OE |
|||||||||||||||||||||||||
|
|
now be read at DATA (“0” means programmed). |
||||||||||||||||||||||||
|
4. |
Set OE to “0”, BS2 to “1”, and BS1 to “0”. The status of the Extended Fuse bits |
||||||||||||||||||||||||
|
|
can now be read at DATA (“0” means programmed). |
||||||||||||||||||||||||
|
5. |
Set |
|
|
|
to “0”, BS2 to “0” and BS1 to “1”. The status of the Lock bits can now be |
||||||||||||||||||||
|
OE |
|||||||||||||||||||||||||
|
|
read at DATA (“0” means programmed). |
||||||||||||||||||||||||
|
6. |
Set |
|
|
to “1”. |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
OE |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
Figure 74. Mapping Between BS1, BS2 and the Fuse and Lock Bits During Read |
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
Fuse Low Byte |
|
0 |
|
|
|
|
|
0 |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
Extended Fuse Byte |
|
|
1 |
|
|
|
|
|
|
|
DATA |
|||||
|
|
|
|
|
|
|
|
|
|
BS2 |
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Lock Bits |
|
|
|
0 |
|
|
|
|
1 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BS1 |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
Fuse High Byte |
|
|
1 |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BS2
Reading the Signature Bytes The algorithm for reading the Signature bytes is as follows (refer to “Programming the Flash” on page 165 for details on Command and Address loading):
1.A: Load Command “0000 1000”.
2.B: Load Address Low Byte (0x00 - 0x02).
3.Set OE to “0”, and BS to “0”. The selected Signature byte can now be read at DATA.
4.Set OE to “1”.
169
2543H–AVR–02/05
Reading the Calibration Byte The algorithm for reading the Calibration byte is as follows (refer to “Programming the Flash” on page 165 for details on Command and Address loading):
1.A: Load Command “0000 1000”.
2.B: Load Address Low Byte, 0x00.
3.Set OE to “0”, and BS1 to “1”. The Calibration byte can now be read at DATA.
4.Set OE to “1”.
Parallel Programming |
Figure 75. Parallel Programming Timing, Including some General Timing |
||||||||||||||||||||||||||||||||||||||||
Characteristics |
Requirements |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tXLWL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
XTAL1 |
|
|
|
|
tXHXL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
Data & Contol |
|
tDVXH |
|
|
|
|
|
|
tXLDX |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
(DATA, XA0/1, BS1, BS2) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
PAGEL |
|
tBVPH |
|
tPHPL |
|
tPLBX |
|
tBVWL |
|
|
|
|
|
|
|
|
|
|
|
tWLBX |
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tWLWH |
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
WR |
|
|
|
|
|
|
|
|
|
tPLWL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WLRL |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RDY/BSY |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tWLRH |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
Figure 76. Parallel Programming Timing, Loading Sequence with Timing |
||||||||||||||||||||||||||||||||||||||||
|
Requirements(1) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
LOAD ADDRESS |
|
LOAD DATA |
|
|
|
|
|
LOAD DATA LOAD DATA |
|
|
|
LOAD ADDRESS |
|||||||||||||||||||||||||||
|
|
(LOW BYTE) |
|
(LOW BYTE) |
|
|
|
|
(HIGH BYTE) |
|
|
|
(LOW BYTE) |
||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
t XLXH |
|
|
|
|
|
|
|
tXLPH |
tPLXH |
|
|
|
|
|
||||||||||||
|
XTAL1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BS1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PAGEL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DATA |
ADDR0 (Low Byte) |
|
DATA (Low Byte) |
|
|
|
DATA (High Byte) |
|
|
|
|
ADDR1 (Low Byte) |
||||||||||||||||||||||||||||
|
XA0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
XA1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Note: |
1. The timing requirements shown in Figure 75 (i.e., tDVXH, tXHXL, and tXLDX) also apply |
|||||||||||||||||||||||||||||||||||||||
|
|
to loading operation. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
170 ATtiny2313/V
2543H–AVR–02/05
ATtiny2313/V
Figure 77. Parallel Programming Timing, Reading Sequence (within the Same Page) with Timing Requirements(1)
|
|
|
|
|
LOAD ADDRESS |
READ DATA |
READ DATA |
LOAD ADDRESS |
|||||||||||||||||||||||||||
|
|
|
|
|
(LOW BYTE) |
(LOW BYTE) |
(HIGH BYTE) |
(LOW BYTE) |
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
tXLOL |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
XTAL1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tBVDV |
|
|
|
|
|
|
|
|
|
|
BS1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
tOLDV |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
OE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tOHDZ |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ADDR1 (Low Byte) |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||
DATA |
|
|
ADDR0 (Low Byte) |
|
|
|
DATA (Low Byte) |
DATA (High Byte) |
|
||||||||||||||||||||||||||
XA0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
XA1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Note: 1. |
The timing requirements shown in Figure 75 (i.e., tDVXH, tXHXL, and tXLDX) also apply |
||||||||||||||||||||||||||||||||||
|
|
|
to reading operation. |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
Table 76. |
Parallel Programming Characteristics, VCC = 5V ± 10% |
|
|
|
|||||||||||||||||||||||||||||||
Symbol |
|
|
Parameter |
|
|
Min |
|
Typ |
Max |
|
Units |
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
VPP |
|
|
Programming Enable Voltage |
|
11.5 |
|
|
|
|
|
12.5 |
|
V |
||||||||||||||||||||||
IPP |
|
|
Programming Enable Current |
|
|
|
|
|
|
|
250 |
|
µA |
||||||||||||||||||||||
tDVXH |
|
|
Data and Control Valid before XTAL1 High |
|
67 |
|
|
|
|
|
|
|
ns |
||||||||||||||||||||||
tXLXH |
|
|
XTAL1 Low to XTAL1 High |
|
|
200 |
|
|
|
|
|
|
|
ns |
|||||||||||||||||||||
tXHXL |
|
|
XTAL1 Pulse Width High |
|
|
150 |
|
|
|
|
|
|
|
ns |
|||||||||||||||||||||
tXLDX |
|
|
Data and Control Hold after XTAL1 Low |
|
67 |
|
|
|
|
|
|
|
ns |
||||||||||||||||||||||
tXLWL |
|
|
XTAL1 Low to |
|
|
|
|
|
|
|
Low |
|
|
0 |
|
|
|
|
|
|
|
ns |
|||||||||||||
WR |
|
|
|
||||||||||||||||||||||||||||||||
tXLPH |
|
|
XTAL1 Low to PAGEL high |
|
|
0 |
|
|
|
|
|
|
|
ns |
|||||||||||||||||||||
tPLXH |
|
|
PAGEL low to XTAL1 high |
|
|
150 |
|
|
|
|
|
|
|
ns |
|||||||||||||||||||||
tBVPH |
|
|
BS1 Valid before PAGEL High |
|
67 |
|
|
|
|
|
|
|
ns |
||||||||||||||||||||||
tPHPL |
|
|
PAGEL Pulse Width High |
|
|
150 |
|
|
|
|
|
|
|
ns |
|||||||||||||||||||||
tPLBX |
|
|
BS1 Hold after PAGEL Low |
|
67 |
|
|
|
|
|
|
|
ns |
||||||||||||||||||||||
tWLBX |
|
|
BS2/1 Hold after |
|
|
|
|
|
Low |
|
|
67 |
|
|
|
|
|
|
|
ns |
|||||||||||||||
WR |
|
|
|
||||||||||||||||||||||||||||||||
tPLWL |
|
|
PAGEL Low to |
|
|
|
|
|
|
Low |
|
|
67 |
|
|
|
|
|
|
|
ns |
||||||||||||||
WR |
|
|
|
||||||||||||||||||||||||||||||||
tBVWL |
|
|
BS1 Valid to |
|
|
|
|
|
|
Low |
|
|
67 |
|
|
|
|
|
|
|
ns |
||||||||||||||
WR |
|
|
|
||||||||||||||||||||||||||||||||
tWLWH |
|
|
|
|
Pulse Width Low |
|
|
150 |
|
|
|
|
|
|
|
ns |
|||||||||||||||||||
|
|
WR |
|
|
|
||||||||||||||||||||||||||||||
tWLRL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Low |
|
|
0 |
|
|
|
|
|
1 |
|
µs |
||
|
|
WR |
Low to RDY/BSY |
|
|||||||||||||||||||||||||||||||
tWLRH |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
High(1) |
|
3.7 |
|
|
|
|
|
4.5 |
|
ms |
|||
|
|
WR |
Low to RDY/BSY |
||||||||||||||||||||||||||||||||
tWLRH_CE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
High for Chip Erase(2) |
|
7.5 |
|
|
|
|
|
9 |
|
ms |
|||
|
|
WR |
Low to RDY/BSY |
||||||||||||||||||||||||||||||||
tXLOL |
|
|
XTAL1 Low to |
|
|
|
|
|
|
Low |
|
|
0 |
|
|
|
|
|
|
|
ns |
||||||||||||||
|
|
OE |
|
|
|
171
2543H–AVR–02/05