8-bit AVR Microcontrollers

Boot Loader Parameters

In the following tables, the parameters used in the description of the self programming are given.

Table 1. Boot Size Configuration
BOOTSZ1 BOOTSZ0 Boot Size Pages Application Flash Section Boot Loader Flash Section End Application Section Boot Reset Address (Start Boot Loader Section)
1 1 256 words 4 0x0000 - 0x3EFF 0x3F00 - 0x3FFF 0x3EFF 0x3F00
1 0 512 words 8 0x0000 - 0x3DFF 0x3E00 - 0x3FFF 0x3DFF 0x3E00
0 1 1024 words 16 0x0000 - 0x3BFF 0x3C00 - 0x3FFF 0x3BFF 0x3C00
0 0 2048 words 32 0x0000 - 0x37FF 0x3800 - 0x3FFF 0x37FF 0x3800
Note: The different BOOTSZ Fuse configurations are shown in Figure 2.
Table 2. Read-While-Write Limit
Section Pages Address
Read-While-Write section (RWW) 224 0x0000 - 0x37FF
No Read-While-Write section (NRWW) 32 0x3800 - 0x3FFF
Note: For details about these two sections, see NRWW – No Read-While-Write Section and RWW – Read-While-Write Section.
Table 3. Explanation of Different Variables used in Figure and the Mapping to the Z-pointer
Variable Corresponding Variable (1) Description
PCMSB 13 Most significant bit in the Program Counter. (The Program Counter is 14 bits PC[13:0].)
PAGEMSB 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] Z[14:7] Program counter page address: Page select, for page erase and page write.
PCWORD PC[5:0] Z[6:1] Program counter word address: Word select, for filling temporary buffer (must be zero during page write operation).
  1. 1.Z[15]: always ignored. Z0: should be zero for all SPM commands, byte select for the LPM instruction.

    See Addressing the Flash During Self-Programming for details about the use of Z-pointer during Self- Programming.