294
7647H–AVR–03/12
Atmel ATmega16/32/64/M1/C1
Note: Z15:Z13: always ignored
Z0: should be zero for all SPM commands, byte select for the LPM instruction.
See “Addressing the Flash During Self-Programming” on page 285 for details about the use of
Z-pointer during Self-Programming.
24.7.16 ATmega16/32/64/M1/C1 - 64K - Flash Boot Loader Parameters
In Table 24-7 through Table 24-9, the parameters used in the description of the self program-
ming are given.
Note: 1. The different BOOTSZ Fuse configurations are shown in Figure 24-2.
2. 1 word equals 2 bytes.
Table 24-12. Explanation of Different Variables used in Figure 24-3 and the Mapping to the
Z-pointer
Variable
Corresponding
Z-value
(Note:)
Description
PCMSB 13
Most significant bit in the Program Counter. (The Program
Counter is 14 bits PC[13:0])
PAGE MSB 5
Most significant bit which is used to address the words within
one page (64 words in a page requires 6 bits PC [5:0]).
ZPCMSB Z14
Bit in Z-register that is mapped to PCMSB. Because Z0 is not
used, the ZPCMSB equals PCMSB + 1.
ZPAGEMSB Z6
Bit in Z-register that is mapped to PAGEMSB. Because Z0 is
not used, the ZPAGEMSB equals PAGEMSB + 1.
PCPAGE PC[13:6] Z14:Z7
Program counter page address: Page select, for page erase
and page write
PCWORD PC[5:0] Z6:Z1
Program counter word address: Word select, for filling
temporary buffer (must be zero during page write operation)
Table 24-13. Boot Size Configuration, ATmega16/32/64/M1/C1 (64K product)
BOOTSZ1 BOOTSZ0
Boot
Size
(2)
Pages
Application
Flash
Section
Boot
Loader
Flash
Section
End
Application
Section
Boot Reset
Address
(Start Boot
Loader
Section)
11
512
words
4
0x0000 -
0x7DFF
0x7E00 -
0x7FFF
0x7DFF 0x7E00
10
1024
words
8
0x0000 -
0x7BFF
0x7C00 -
0x7FFF
0x7BFF 0x7C00
01
2048
words
16
0x0000 -
0x77FF
0x7800 -
0x7FFF
0x77FF 0x7800
00
4096
words
32
0x0000 -
0x6FFF
0x7000 -
0x7FFF
0x6FFF 0x7000
Table 24-14. Read-While-Write Limit
Section Pages Address
Read-While-Write section (RWW) 224 0x0000 - 0x6FFF
No Read-While-Write section (NRWW) 32 0x7000 - 0x7FFF