AT91SAM7S32-AI ATMEL [ATMEL Corporation], AT91SAM7S32-AI Datasheet - Page 95

no-image

AT91SAM7S32-AI

Manufacturer Part Number
AT91SAM7S32-AI
Description
AT91 ARM Thumb-based Microcontrollers
Manufacturer
ATMEL [ATMEL Corporation]
Datasheet
Figure 36. Example of Partial Page Programming:
6071A–ATARM–28-Oct-04
16 words
16 words
16 words
16 words
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
Erase All Flash
Page 7 erased
32 bits wide
Step 1.
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
...
...
...
...
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
By setting the NEBP bit in the MC_FMR register, a page can be programmed in several steps
if it has been erased before (see Figure 36).
After programming, the page (the whole lock region) can be locked to prevent miscellaneous
write or erase sequences. The lock bit can be automatically set after page programming using
WPL.
Data to be written are stored in an internal latch buffer. The size of the latch buffer corre-
sponds to the page size. The latch buffer wraps around within the internal memory area
address space and appears to be repeated by the number of pages in it.
Note:
Data are written to the latch buffer before the programming command is written to the Flash
Command Register MC_FCR. The sequence is as follows:
Two errors can be detected in the MC_FSR register after a programming sequence:
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
Write the full page, at any page address, within the internal memory area address space
using only 32-bit access.
Programming starts as soon as the page number and the programming command are
written to the Flash Command Register. The FRDY bit in the Flash Programming Status
Register (MC_FSR) is automatically cleared.
When programming is completed, the bit FRDY in the Flash Programming Status Register
(MC_FSR) rises. If an interrupt was enabled by setting the bit FRDY in MC_FMR, the
interrupt line of the Memory Controller is activated.
Programming Error: A bad keyword and/or an invalid command have been written in the
MC_FCR register.
Lock Error: The page to be programmed belongs to a locked region. A command must be
previously run to unlock the corresponding region.
Writing of 8-bit and 16-bit data is not allowed and may lead to unpredictable data corruption.
Programming of the second part of Page 7
FF
FF
FF
CA FE
CA FE
CA FE
FF
FF
FF
FF
FF
FF
(NEBP = 1)
32 bits wide
FF
FF
FF
FF
FF
FF
FF
FF
FF
Step 2.
...
...
...
...
CA
CA
CA
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FE
FE
FE
FF
FF
FF
FF
FF
FF
AT91SAM7S32 Preliminary
Programming of the third part of Page 7
FF
FF
FF
CA FE
CA FE
CA FE
DE CA
DE CA
DE CA
FF
FF
FF
(NEBP = 1)
32 bits wide
FF
FF
FF
FF
FF
FF
Step 3.
...
...
...
...
FF
FF
FF
CA
CA
CA
DE CA
DE CA
DE CA
FF
FF
FF
FF
FF
FF
FF
FF
FF
FE
FE
FE
95

Related parts for AT91SAM7S32-AI