Datasheet
337
ATmega640/1280/1281/2560/2561
2549K–AVR–01/07
Note: 1. For details about these two section, see “NRWW – No Read-While-Write Section” on
page 324 and “RWW – Read-While-Write Section” on page 324.
Notes: 1. Z0: should be zero for all SPM commands, byte select for the (E)LPM instruction.
2. See “Addressing the Flash During Self-Programming” on page 328 for details about
the use of Z-pointer during Self-Programming.
3. The Z-register is only 16 bits wide. Bit 16 is located in the RAMPZ register in the I/O
map.
Table 144. Read-While-Write Limit, ATmega1280/1281
Section
(1)
Pages Address
Read-While-Write section (RWW) 480 0x0000 - 0xEFFF
No Read-While-Write section (NRWW) 32 0xF000 - 0xFFFF
Table 145. Explanation of different variables used in Figure 137 and the mapping to the
Z-pointer, ATmega1280/1281
Variable
Corresponding
Z-value
(2)
Description
(1)
PCMSB 15 Most significant bit in the Program Counter.
(The Program Counter is 16 bits PC[15:0])
PAGEMSB 6 Most significant bit which is used to address the
words within one page (128 words in a page
requires seven bits PC [6:0]).
ZPCMSB Z16
(3)
Bit in Z-pointer that is mapped to PCMSB.
Because Z0 is not used, the ZPCMSB equals
PCMSB + 1.
ZPAGEMSB Z7 Bit in Z-pointer that is mapped to PCMSB.
Because Z0 is not used, the ZPAGEMSB
equals PAGEMSB + 1.
PCPAGE PC[15:7] Z16
(3)
:Z8 Program Counter page address: Page select,
for Page Erase and Page Write
PCWORD PC[6:0] Z7:Z1 Program Counter word address: Word select,
for filling temporary buffer (must be zero during
Page Write operation)