8 serial programming pin mapping, 9 parallel programming, 1 enter programming mode – Rainbow Electronics ATmega64M1 User Manual
Page 296: Is shown in, Table 28-13, Table 28-14

296
8209A–AVR–08/09
ATmega16M1/32M1/64M1
28.8
Serial Programming Pin Mapping
28.9
Parallel Programming
28.9.1
Enter Programming Mode
The following algorithm puts the device in Parallel (High-voltage) > Programming mode:
1.
Set Prog_enable pins listed in Table 28-12. to “0000”, RESET pin to “0” and Vcc to 0V.
2.
Apply 4.5 - 5.5V between VCC and GND. Ensure that Vcc reaches at least 1.8V within
the next 20µs.
3.
Wait 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 power the device down or by bringing RESET pin to 0V.
Table 28-13. 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 28-14. 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
Table 28-15. Pin Mapping Serial Programming
Symbol
Pins
I/O
Description
MOSI_A
PD3
I
Serial Data in
MISO_A
PD2
O
Serial Data out
SCK_A
PD4
I
Serial Clock