Atmel AT90PWM2 Manual page 272

8-bit avr microcontroller with 8k bytes in-system programmable flash
Table of Contents

Advertisement

24.7
Self-Programming the Flash
4317I–AVR–01/08
Figure 24-3. Addressing the Flash During SPM
BIT
15
ZPCMSB
Z - REGISTER
PCMSB
PROGRAM
COUNTER
PAGE ADDRESS
WITHIN THE FLASH
PROGRAM MEMORY
PAGE
Note:
1. The different variables used in
The program memory is updated in a page by page fashion. Before programming a page with
the data stored in the temporary page buffer, the page must be erased. The temporary page
buffer is filled one word at a time using SPM and the buffer can be filled either before the Page
Erase command or between a Page Erase and a Page Write operation:
Alternative 1, fill the buffer before a Page Erase
Fill temporary page buffer
Perform a Page Erase
Perform a Page Write
Alternative 2, fill the buffer after Page Erase
Perform a Page Erase
Fill temporary page buffer
Perform a Page Write
If only a part of the page needs to be changed, the rest of the page must be stored (for example
in the temporary page buffer) before the erase, and then be rewritten. When using alternative 1,
the Boot Loader provides an effective Read-Modify-Write feature which allows the user software
to first read the page, do the necessary changes, and then write back the modified data. If alter-
native 2 is used, it is not possible to read the old data while loading since the page is already
erased. The temporary page buffer can be accessed in a random sequence. It is essential that
the page address used in both the Page Erase and Page Write operation is addressing the
same page. See
"Simple Assembly Code Example for a Boot Loader" on page 276
assembly code example.
(1)
ZPAGEMSB
1
0
0
PAGEMSB
PCPAGE
PCWORD
WORD ADDRESS
WITHIN A PAGE
Figure 24-3
are listed in
AT90PWM2/3/2B/3B
PAGE
PCWORD[PAGEMSB:0]:
00
INSTRUCTION WORD
01
02
PAGEEND
Table 24-8 on page
279.
for an
273

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the AT90PWM2 and is the answer not in the manual?

Subscribe to Our Youtube Channel

This manual is also suitable for:

At90pwm3At90pwm2bAt90pwm3b

Table of Contents