299
8025I–AVR–02/09
ATmega48P/88P/168P/328P
25.4
Calibration Byte
The ATmega48P/88P/168P/328P has a byte calibration value for the Internal RC Oscillator. This
byte resides in the high byte of address 0x000 in the signature address space. During reset, this
byte is automatically written into the OSCCAL Register to ensure correct frequency of the cali-
brated RC Oscillator.
25.5
Page Size
25.6
Parallel Programming Parameters, Pin Mapping, and Commands
This section describes how to parallel program and verify Flash Program memory, EEPROM
Data memory, Memory Lock bits, and Fuse bits in the ATmega48P/88P/168P/328P. Pulses are
assumed to be at least 250 ns unless otherwise noted.
25.6.1
Signal Names
In this section, some pins of the ATmega48P/88P/168P/328P are referenced by signal names
describing their functionality during parallel programming, see
and
Pins not described in the following table are referenced by pin names.
The XA1/XA0 pins determine the action executed when the XTAL1 pin is given a positive pulse.
The bit coding is shown in
.
When pulsing WR or OE, the command loaded determines the action executed. The different
Commands are shown in
.
Table 25-11. No. of Words in a Page and No. of Pages in the Flash
Device
Flash Size
Page Size
PCWORD
No. of
Pages
PCPAGE
PCMSB
ATmega48P
2K words
(4K bytes)
32 words
PC[4:0]
64
PC[10:5]
10
ATmega88P
4K words
(8K bytes)
32 words
PC[4:0]
128
PC[11:5]
11
ATmega168P
8K words
(16K bytes)
64 words
PC[5:0]
128
PC[12:6]
12
ATmega328P
16K words
(32K bytes)
64 words
PC[5:0]
256
PC[13:6]
13
Table 25-12. No. of Words in a Page and No. of Pages in the EEPROM
Device
EEPROM
Size
Page
Size
PCWORD
No. of
Pages
PCPAGE
EEAMSB
ATmega48P
256 bytes
4 bytes
EEA[1:0]
64
EEA[7:2]
7
ATmega88P
512 bytes
4 bytes
EEA[1:0]
128
EEA[8:2]
8
ATmega168P
512 bytes
4 bytes
EEA[1:0]
128
EEA[8:2]
8
ATmega328P
1K bytes
4 bytes
EEA[1:0]
256
EEA[9:2]
9