Datasheet
Pin Symbol Value
XA0 Prog_enable[1] 0
BS1 Prog_enable[0] 0
Table 32-14. XA1 and XA0 Coding
XA1 XA0 Action When XTAL1 is Pulsed
0 0 Load Flash or EEPROM Address (High or low address byte determined by BS1)
0 1 Load Data (High or Low data byte for Flash determined by BS1)
1 0 Load Command
1 1 No Action, Idle
Table 32-15. Command Byte Bit Coding
Command Byte Command Executed
1000 0000 Chip Erase
0100 0000 Write Fuse bits
0010 0000 Write Lock bits
0001 0000 Write Flash
0001 0001 Write EEPROM
0000 1000 Read Signature Bytes and Calibration byte
0000 0100 Read Fuse and Lock bits
0000 0010 Read Flash
0000 0011 Read EEPROM
32.8 Parallel Programming
32.8.1 Entering Programming Mode
Follow the steps below to put the device in Parallel (High-voltage) Programming mode:
1. Set the Prog_enable pins listed in the table Pin Values Used to Enter Programming Mode above to
“0x0000”, RESET pin to 0V and V
CC
to 0V.
2. Apply 4.5–5.5V between V
CC
and GND.
Ensure that V
CC
reaches at least 1.8V within the next 20 μs.
3. Wait for 20–60 μs, and apply 11.5–12.5V to RESET.
4. Keep the Prog_enable pins unchanged for at least 10 μs after the high voltage has been applied to
ensure the Prog_enable signature has been latched.
5. Wait at least 300 μs before giving any parallel programming commands.
6. Exit Programming mode by powering down the device or by bringing RESET pin to 0V.
If the rise time of V
CC
is unable to fulfill the requirements listed above, the following alternative method
can be used to put the device in Parallel (High-voltage) Programming mode:
ATmega48PA/88PA/168PA
Memory Programming (MEMPROG)
© 2018 Microchip Technology Inc.
Datasheet Complete
DS40002011A-page 371