ATMEGA128-16MN Atmel, ATMEGA128-16MN Datasheet - Page 279

MCU AVR 128KB FLASH 16MHZ 64QFN

ATMEGA128-16MN

Manufacturer Part Number
ATMEGA128-16MN
Description
MCU AVR 128KB FLASH 16MHZ 64QFN
Manufacturer
Atmel
Series
AVR® ATmegar
Datasheets

Specifications of ATMEGA128-16MN

Core Processor
AVR
Core Size
8-Bit
Speed
16MHz
Connectivity
EBI/EMI, I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
53
Program Memory Size
128KB (64K x 16)
Program Memory Type
FLASH
Eeprom Size
4K x 8
Ram Size
4K x 8
Voltage - Supply (vcc/vdd)
4.5 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
64-MLF®, 64-QFN
Processor Series
ATMEGA128x
Core
AVR8
Data Bus Width
8 bit
Data Ram Size
4 KB
3rd Party Development Tools
EWAVR, EWAVR-BL
Development Tools By Supplier
ATAVRDRAGON, ATSTK500, ATSTK600, ATAVRISP2, ATAVRONEKIT
For Use With
ATSTK600 - DEV KIT FOR AVR/AVR32ATSTK501 - ADAPTER KIT FOR 64PIN AVR MCUATSTK500 - PROGRAMMER AVR STARTER KIT
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Self-Programming
the Flash
2467V–AVR–02/11
Figure 134. Addressing the Flash During SPM
Notes:
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 buf-
fer 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
Alternative 2, fill the buffer after page erase
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
code example.
Fill temporary page buffer
Perform a page erase
Perform a page write
Perform a page erase
Fill temporary page buffer
Perform a page write
1. The different variables used in
2. PCPAGE and PCWORD are listed in
RAMPZ
PROGRAM
COUNTER
PROGRAM MEMORY
“Simple Assembly Code Example for a Boot Loader” on page 282
PAGE
PCMSB
PAGE ADDRESS
WITHIN THE FLASH
BIT
15
ZPCMSB
PCPAGE
Figure 134
Table 124 on page
PAGEMSB
ZPAGEMSB
(1)
WORD ADDRESS
WITHIN A PAGE
PCWORD
are listed in
INSTRUCTION WORD
1
Table 114 on page
PAGE
0
0
291.
Z - REGISTER
ATmega128
PCWORD[PAGEMSB:0]:
00
01
02
PAGEEND
285.
for an assembly
279

Related parts for ATMEGA128-16MN