28.8.13 ATmega8A Boot Loader Parameters
In the following tables, the parameters used in the description of the self programming are given.
BOOTSZ1 | BOOTSZ0 | Boot Size | Pages | Application Flash Section | Boot Loader Flash Section | End Application Section | Boot Reset Address (Start Boot Loader Section) |
---|---|---|---|---|---|---|---|
1 | 1 | 128 words | 4 | 0x000 - 0xF7F | 0xF80 - 0xFFF | 0xF7F | 0xF80 |
1 | 0 | 256 words | 8 | 0x000 - 0xEFF | 0xF00 - 0xFFF | 0xEFF | 0xF00 |
0 | 1 | 512 words | 16 | 0x000 - 0xDFF | 0xE00 - 0xFFF | 0xDFF | 0xE00 |
0 | 0 | 1024 words | 32 | 0x000 - 0xBFF | 0xC00 - 0xFFF | 0xBFF | 0xC00 |
Note: The different BOOTSZ Fuse
configurations are shown in Figure 28-2.
Section | Pages | Address |
---|---|---|
Read-While-Write section (RWW) | 96 | 0x000 - 0xBFF |
No Read-While-Write section (NRWW) | 32 | 0xC00 - 0xFFF |
Note: For details about these two section,
see NRWW – No Read-While-Write Section and RWW – Read-While-Write Section.
Variable | Corresponding Z-value(1) | Description | |
---|---|---|---|
PCMSB | 11 | Most significant bit in the Program Counter. (The Program Counter is 12 bits PC[11:0]) | |
PAGEMSB | 4 | Most significant bit which is used to address the words within one page (32 words in a page requires 5 bits PC [4:0]). | |
ZPCMSB | Z12 | Bit in Z-register that is mapped to PCMSB. Because Z0 is not used, the ZPCMSB equals PCMSB + 1. | |
ZPAGEMSB | Z5 | Bit in Z-register that is mapped to PAGEMSB. Because Z0 is not used, the ZPAGEMSB equals PAGEMSB + 1. | |
PCPAGE | PC[11:5] | Z12:Z6 | Program counter page address: Page select, for page erase and page write |
PCWORD | PC[4:0] | Z5:Z1 | Program counter word address: Word select, for filling temporary buffer (must be zero during page write operation) |
Note: 1.
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 for details about the use of Z-pointer during Self- Programming.