Memory programming, Boot loader support, Ee “boot loader sup – Rainbow Electronics ATmega163L User Manual
Page 115: Atmega163(l)

ATmega163(L)
115
Memory Programming
Boot Loader Support
The ATmega163 provides a mechanism for programming and reprogramming code by the MCU itself. This feature allows
flexible application software updates, controlled by the MCU using a Flash-resident Boot Loader program. This makes it
possible to program the AVR in a target system without access to its SPI pins. The Boot Loader program can use any avail-
able data interface and associated protocol, such as UART serial bus interface, to input or output program code, and write
(program) that code into the Flash memory, or read the code from the Flash memory.
The ATmega163 Flash memory is organized in two main sections:
• The Application Flash section
• The Boot Loader Flash section
The Application Flash section and the Boot Loader Flash section have seperate Boot Lock Bits. Thus the user can select
different levels of protection for the two sections. The Store Program Memory (SPM) instruction can only be executed from
the Boot Loader Flash section.
The program Flash memory in ATmega163 is divided into 128 pages of 64 words each. The Boot Loader Flash section is
located at the high address space of the Flash, and can be configured through the BOOTSZ fuses as shown in Table 50.
Table 50. Boot Size Configuration
BOOTSZ1
BOOTSZ0
Boot Size
Pages
Application Flash Addresses
Boot Flash Addresses
1
1
128 Words
2
$0000 - $1F7F
$1F80 - $1FFF
1
0
256 Words
4
$0000 - $1EFF
$1F00 - $1FFF
0
1
512 Words
8
$0000 - $1DFF
$1E00 - $1FFF
0
0
1024 Words
16
$0000 - $1BFF
$1C00 - $1FFF