AT90USB82/162
For a detailed description of SPI, debugWIRE and Parallel data downloading to the EEPROM,
see page 257, page 241, and page 246 respectively.
5.3.1
EEPROM Read/Write Access
The EEPROM Access Registers are accessible in the I/O space.
The write access time for the EEPROM is given in Table 5-2. A self-timing function, however,
lets the user software detect when the next byte can be written. If the user code contains instruc-
tions that write the EEPROM, some precautions must be taken. In heavily filtered power
supplies, VCC is likely to rise or fall slowly on power-up/down. This causes the device for some
period of time to run at a voltage lower than specified as minimum for the clock frequency used.
See “Preventing EEPROM Corruption” on page 23. for details on how to avoid problems in these
situations.
In order to prevent unintentional EEPROM writes, a specific write procedure must be followed.
Refer to the description of the EEPROM Control Register for details on this.
When the EEPROM is read, the CPU is halted for four clock cycles before the next instruction is
executed. When the EEPROM is written, the CPU is halted for two clock cycles before the next
instruction is executed.
5.3.2
The EEPROM Address Register – EEARH and EEARL
Bit
15
14
13
12
11
10
9
8
–
–
–
–
EEAR11
EEAR10
EEAR9
EEAR1
1
EEAR8
EEAR0
0
EEARH
EEAR7
EEAR6
EEAR5
EEAR4
EEAR3
EEAR2
EEARL
7
6
5
4
3
2
Read/Write
Initial Value
R
R
R
R
R/W
R/W
X
R/W
R/W
X
R/W
R/W
X
R/W
R/W
X
R/W
0
R/W
0
R/W
0
R/W
0
X
X
X
X
X
X
X
X
• Bits 15..12 – Res: Reserved Bits
These bits are reserved bits in the AT90USB82/162 and will always read as zero.
• Bits 11..0 – EEAR8..0: EEPROM Address
The EEPROM Address Registers – EEARH and EEARL specify the EEPROM address in the
512 bytes EEPROM space. The EEPROM data bytes are addressed linearly between 0 and
512. The initial value of EEAR is undefined. A proper value must be written before the EEPROM
may be accessed.
5.3.3
The EEPROM Data Register – EEDR
Bit
7
6
5
4
3
2
1
0
MSB
R/W
0
LSB
R/W
0
EEDR
Read/Write
Initial Value
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
• Bits 7..0 – EEDR7.0: EEPROM Data
For the EEPROM write operation, the EEDR Register contains the data to be written to the
EEPROM in the address given by the EEAR Register. For the EEPROM read operation, the
EEDR contains the data read out from the EEPROM at the address given by EEAR.
19
7707D–AVR–07/08