ATMEGA16-16MQ Atmel, ATMEGA16-16MQ Datasheet - Page 252

MCU AVR 16K FLASH 16MHZ 44-QFN

ATMEGA16-16MQ

Manufacturer Part Number
ATMEGA16-16MQ
Description
MCU AVR 16K FLASH 16MHZ 44-QFN
Manufacturer
Atmel
Series
AVR® ATmegar
Datasheet

Specifications of ATMEGA16-16MQ

Core Processor
AVR
Core Size
8-Bit
Speed
16MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
32
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)
4.5 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
44-VQFN Exposed Pad
Processor Series
ATMEGA16x
Core
AVR8
Data Bus Width
8 bit
Data Ram Size
1 KB
Mounting Style
SMD/SMT
3rd Party Development Tools
EWAVR, EWAVR-BL
Development Tools By Supplier
ATAVRDRAGON, ATSTK500, ATSTK600, ATAVRISP2, ATAVRONEKIT
For Use With
ATSTK600-TQFP44 - STK600 SOCKET/ADAPTER 44-TQFPATSTK500 - PROGRAMMER AVR STARTER KIT
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Self-Programming
the Flash
2466T–AVR–07/10
Figure 126. 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
Z - REGISTER
1. The different variables used in
2. PCPAGE and PCWORD are listed in
PROGRAM MEMORY
BIT
“Simple Assembly Code Example for a Boot Loader” on page 256
PROGRAM
COUNTER
15
PAGE
PAGE ADDRESS
WITHIN THE FLASH
ZPCMSB
PCMSB
PCPAGE
Figure 126
ZPAGEMSB
PAGEMSB
PCWORD
Table 107 on page
(1)
WORD ADDRESS
WITHIN A PAGE
are listed in
1
0
0
INSTRUCTION WORD
PAGE
Table 102 on page
262.
ATmega16(L)
PCWORD[PAGEMSB:0]:
00
01
02
PAGEEND
258.
for an assembly
252

Related parts for ATMEGA16-16MQ