Boot loader lock bits, Atmega32(l) – Rainbow Electronics ATmega32L User Manual
Page 244

244
ATmega32(L)
2503C–AVR–10/02
Figure 125. Memory Sections
(1)
Note:
1. The parameters in the figure above are given in Table 100 on page 253.
Boot Loader Lock Bits
If no Boot Loader capability is needed, the entire Flash is available for application code.
The Boot Loader has two separate sets of Boot Lock bits which can be set indepen-
dently. This gives the user a unique flexibility to select different levels of protection.
The user can select:
•
To protect the entire Flash from a software update by the MCU
•
To protect only the Boot Loader Flash section from a software update by the MCU
•
To protect only the Application Flash section from a software update by the MCU
•
Allow software update in the entire Flash
See Table 96 and Table 97 for further details. The Boot Lock bits can be set in software
and in Serial or Parallel Programming mode, but they can be cleared by a Chip Erase
command only. The general Write Lock (Lock Bit mode 2) does not control the program-
ming of the Flash memory by SPM instruction. Similarly, the general Read/Write Lock
(Lock Bit mode 3) does not control reading nor writing by LPM/SPM, if it is attempted.
$0000
Flashend
Program Memory
BOOTSZ = '11'
Application Flash Section
Boot Loader Flash Section
Flashend
Program Memory
BOOTSZ = '10'
$0000
Program Memory
BOOTSZ = '01'
Program Memory
BOOTSZ = '00'
Application Flash Section
Boot Loader Flash Section
$0000
Flashend
Application Flash Section
Flashend
End RWW
Start NRWW
Application flash Section
Boot Loader Flash Section
Boot Loader Flash Section
End RWW
Start NRWW
End RWW
Start NRWW
$0000
End RWW, End Application
Start NRWW, Start Boot Loader
Application Flash Section
Application Flash Section
Application Flash Section
Read-While-Wr
ite Section
No Read-While-Wr
ite Section
Read-While-Wr
ite Section
No Read-While-Wr
ite Section
Read-While-Wr
ite Section
No Read-While-Wr
ite Section
Read-While-Wr
ite Section
No Read-While-Wr
ite Section
End Application
Start Boot Loader
End Application
Start Boot Loader
End Application
Start Boot Loader