15 performing chip erase, 16 programming the flash, 17 reading the flash – Rainbow Electronics ATmega128RFA1 User Manual
Page 490: Atmega128rfa1

490
8266A-MCU Wireless-12/09
ATmega128RFA1
31.9.15 Performing Chip Erase
1. Enter JTAG instruction PROG_COMMANDS.
2. Start Chip Erase using programming instruction 1a.
3. Poll for Chip Erase complete using programming instruction 1b, or wait for t
WLRH_CE
page 477).
31.9.16 Programming the Flash
Before programming the Flash a Chip Erase must be performed, see section
.
1. Enter JTAG instruction PROG_COMMANDS.
2. Enable Flash write using programming instruction 2a.
3. Load High byte of address using programming instruction 2c.
4. Load Low byte of address using programming instruction 2d.
5. Load data using programming instructions 2e, 2f and 2g.
6. Repeat steps 5 and 6 for all instruction words in the page.
7. Write the page using programming instruction 2h.
8. Poll for Flash write complete using programming instruction 2i, or wait for t
WLRH
(refer
page 477).
9. Repeat steps 3 to 8 until all data have been programmed.
A more efficient data transfer can be achieved using the PROG_PAGELOAD
instruction:
1. Enter JTAG instruction PROG_COMMANDS.
2. Enable Flash write using programming instruction 2a.
3. Load the page address using programming instructions 2c and 2d. PCWORD (refer
page 467) is used to address within one page and must be written
as 0.
4. Enter JTAG instruction PROG_PAGELOAD.
5. Load the entire page by shifting in all instruction words in the page byte-by-byte,
starting with the LSB of the first instruction in the page and ending with the MSB of
the last instruction in the page. Use Update-DR to copy the contents of the Flash
Data Byte Register into the Flash page location and to auto-increment the Program
Counter before each new word.
6. Enter JTAG instruction PROG_COMMANDS.
7. Write the page using programming instruction 2h.
8. Poll for Flash write complete using programming instruction 2i, or wait for t
WLRH
(refer
page 477).
9. Repeat steps 3 to 8 until all data have been programmed.
31.9.17 Reading the Flash
1. Enter JTAG instruction PROG_COMMANDS.
2. Enable Flash read using programming instruction 3a.
3. Load address using programming instructions 3c and 3d.
4. Read data using programming instruction 3e.
5. Repeat steps 3 and 4 until all data have been read.
A more efficient data transfer can be achieved using the PROG_PAGEREAD
instruction: