5 programming the eeprom, Figure 28-3, Figure 28-3. programming the flash waveforms – Rainbow Electronics ATmega64M1 User Manual
Page 299

299
8209A–AVR–08/09
ATmega16M1/32M1/64M1
Figure 28-2. Addressing the Flash Which is Organized in Pages
Note:
1. PCPAGE and PCWORD are listed in
.
Figure 28-3. Programming the Flash Waveforms
Note:
1. “XX” is don’t care. The letters refer to the programming description above.
28.9.5
Programming the EEPROM
The EEPROM is organized in pages, see
. 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 297
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).
PROGRAM MEMORY
WORD ADDRESS
WITHIN A PAGE
PAGE ADDRESS
WITHIN THE FLASH
INSTRUCTION WORD
PAGE
PCWORD[PAGEMSB:0]:
00
01
02
PAGEEND
PAGE
PCWORD
PCPAGE
PCMSB
PAGEMSB
PROGRAM
COUNTER
RDY/BSY
WR
OE
RESET +12V
PAGEL
BS2
0x10
ADDR. LOW
ADDR. HIGH
DATA
DATA LOW
DATA HIGH
ADDR. LOW
DATA LOW
DATA HIGH
XA1
XA0
BS1
XTAL1
XX
XX
XX
A
B
C
D
E
B
C
D
E
G
H
F