ATMEGA16M1-AU Atmel, ATMEGA16M1-AU Datasheet - Page 276

IC MCU AVR 16K FLASH 32TQFP

ATMEGA16M1-AU

Manufacturer Part Number
ATMEGA16M1-AU
Description
IC MCU AVR 16K FLASH 32TQFP
Manufacturer
Atmel
Series
AVR® ATmegar
Datasheets

Specifications of ATMEGA16M1-AU

Core Processor
AVR
Core Size
8-Bit
Speed
16MHz
Connectivity
CAN, LIN, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, Temp Sensor, WDT
Program Memory Size
16KB (8K x 16)
Program Memory Type
FLASH
Eeprom Size
512 x 8
Ram Size
1K x 8
Voltage - Supply (vcc/vdd)
2.7 V ~ 5.5 V
Data Converters
A/D 11x10b; D/A 1x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
32-TQFP, 32-VQFP
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Number Of I /o
-

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ATMEGA16M1-AU
Manufacturer:
Atmel
Quantity:
10 000
26.7
276
Self-Programming the Flash
ATmega16M1/32M1/64M1
Figure 26-3. Addressing the Flash During SPM
Note:
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
Z - REGISTER
1. The different variables used in
PROGRAM MEMORY
BIT
“Simple Assembly Code Example for a Boot Loader” on page 280
PAGE
PROGRAM
COUNTER
15
PAGE ADDRESS
WITHIN THE FLASH
ZPCMSB
PCMSB
PCPAGE
Figure 26-3
ZPAGEMSB
PAGEMSB
PCWORD
WORD ADDRESS
WITHIN A PAGE
(1)
are listed in
1
0
0
INSTRUCTION WORD
Table 26-12 on page 283
PAGE
PCWORD[PAGEMSB:0]:
00
01
02
PAGEEND
for an assembly
8209D–AVR–11/10

Related parts for ATMEGA16M1-AU