atmega32u4-16mu ATMEL Corporation, atmega32u4-16mu Datasheet - Page 351

no-image

atmega32u4-16mu

Manufacturer Part Number
atmega32u4-16mu
Description
Atmega32u4 8-bit Avr Microcontroller With 32k Bytes Of Isp Flash And Usb Controller
Manufacturer
ATMEL Corporation
Datasheet
28.3.1
28.3.2
7766A–AVR–03/08
RWW – Read-While-Write Section
NRWW – No Read-While-Write Section
sections that are configurable by the BOOTSZ Fuses as described above, the Flash is also
divided into two fixed sections, the Read-While-Write (RWW) section and the No Read-While-
Write (NRWW) section. The limit between the RWW- and NRWW sections is given in
1
Note that the user software can never read any code that is located inside the RWW section dur-
ing a Boot Loader software operation. The syntax “Read-While-Write section” 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 section. 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 load program
memory, call, or jump instructions 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.
SPMCSR” on page 356.
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 28-1.
• When erasing or writing a page located inside the RWW section, the NRWW section can be
• When erasing or writing a page located inside the NRWW section, the CPU is halted during
and
read during the operation.
the entire operation.
pointer Address During the
Which Section does the Z-
Figure 28-1 on page
Programming?
NRWW Section
RWW Section
Read-While-Write Features
for details on how to clear RWWSB.
352. The main difference between the two sections is:
See “Store Program Memory Control and Status Register –
Which Section Can
be Read During
Programming?
NRWW Section
None
Is the CPU
Halted?
Yes
No
Read-While-Write
ATmega32U4
Supported?
Yes
No
Table 28-
351

Related parts for atmega32u4-16mu