ATMEGA325-16AJ ATMEL [ATMEL Corporation], ATMEGA325-16AJ Datasheet - Page 243

no-image

ATMEGA325-16AJ

Manufacturer Part Number
ATMEGA325-16AJ
Description
8-bit Microcontroller with In-System Programmable Flash
Manufacturer
ATMEL [ATMEL Corporation]
Datasheet
RWW – Read-While-Write
Section
NRWW – No Read-While-Write
Section
2570A–AVR–09/04
Note that the user software can never read any code that is located inside the RWW
section during a Boot Loader software operation. The syntax “Read-While-Write sec-
tion” refers to which section that is being programmed (erased or written), not which
section that actually is being read during a Boot Loader software update.
If a Boot Loader software update is programming a page inside the RWW section, it is
possible to read code from the Flash, but only code that is located in the NRWW sec-
tion. During an on-going programming, the software must ensure that the RWW section
never is being read. If the user software is trying to read code that is located inside the
RWW section (i.e., by a call/jmp/lpm or an interrupt) during programming, the software
might end up in an unknown state. To avoid this, the interrupts should either be disabled
or moved to the Boot Loader section. The Boot Loader section is always located in the
NRWW section. The RWW Section Busy bit (RWWSB) in the Store Program Memory
Control and Status Register (SPMCSR) will be read as logical one as long as the RWW
section is blocked for reading. After a programming is completed, the RWWSB must be
cleared by software before reading code located in the RWW section. See “Store Pro-
gram Memory Control and Status Register – SPMCSR” on page 246. for details on how
to clear RWWSB.
The code located in the NRWW section can be read when the Boot Loader software is
updating a page in the RWW section. When the Boot Loader code updates the NRWW
section, the CPU is halted during the entire Page Erase or Page Write operation.
Table 99. Read-While-Write Features
Figure 108. Read-While-Write vs. No Read-While-Write
pointer Address During the
Which Section does the Z-
Programming?
NRWW Section
Z-pointer
Addresses RWW
Section
Code Located in
NRWW Section
Can be Read During
the Operation
RWW Section
Read-While-Write
No Read-While-Write
(RWW) Section
Which Section Can
(NRWW) Section
ATmega325/3250/645/6450
be Read During
Programming?
NRWW Section
None
Is the CPU
Halted?
Yes
No
Z-pointer
Addresses NRWW
Section
CPU is Halted
During the Operation
Read-While-Write
Supported?
Yes
No
243

Related parts for ATMEGA325-16AJ