301
7647H–AVR–03/12
Atmel ATmega16/32/64/M1/C1
For the ATmega64M1 the signature bytes are:
1. 0x000: 0x1E (indicates manufactured by Atmel).
2. 0x001: 0x96 (indicates 64KB Flash memory).
3. 0x002: 0x84 (indicates ATmega64M1 device when 0x001 is 0x96).
For the ATmega32C1 the signature bytes are:
1. 0x000: 0x1E (indicates manufactured by Atmel).
2. 0x001: 0x95 (indicates 32KB Flash memory).
3. 0x002: 0x86 (indicates ATmega32C1 device when 0x001 is 0x95).
For the ATmega64C1 the signature bytes are:
1. 0x000: 0x1E (indicates manufactured by Atmel).
2. 0x001: 0x96 (indicates 32KB Flash memory).
3. 0x002: 0x86 (indicates ATmega64C1 device when 0x001 is 0x96).
25.5 Calibration Byte
The ATmega16/32/64/M1/C1 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.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 ATmega16/32/64/M1/C1. Pulses are
assumed to be at least 250ns unless otherwise noted.
25.6.1 Signal Names
In this section, some pins of the ATmega16/32/64/M1/C1 are referenced by signal names
describing their functionality during parallel programming, see Figure 25-1 and Table 25-8. 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 Table 25-10.
When pulsing WR
or OE, the command loaded determines the action executed. The different
Commands are shown in Table 25-11.