310
8271D–AVR–05/11
ATmega48A/PA/88A/PA/168A/PA/328/P
1.
A: Load Command “0100 0000”.
2.
C: Load Data Low Byte. Bit n = “0” programs and bit n = “1” erases the Fuse bit.
3.
Set BS1 to “1” and BS2 to “0”. This selects high data byte.
4.
Give WR a negative pulse and wait for RDY/BSY to go high.
5.
Set BS1 to “0”. This selects low data byte.
28.7.10
Programming the Extended Fuse Bits
The algorithm for programming the Extended Fuse bits is as follows (refer to
for details on Command and Data loading):
1.
1. A: Load Command “0100 0000”.
2.
2. C: Load Data Low Byte. Bit n = “0” programs and bit n = “1” erases the Fuse bit.
3.
3. Set BS1 to “0” and BS2 to “1”. This selects extended data byte.
4.
4. Give WR a negative pulse and wait for RDY/BSY to go high.
5.
5. Set BS2 to “0”. This selects low data byte.
Figure 28-5.
Programming the FUSES Waveforms
28.7.11
Programming the Lock Bits
The algorithm for programming the Lock bits is as follows (refer to
for details on Command and Data loading):
1.
A: Load Command “0010 0000”.
2.
C: Load Data Low Byte. Bit n = “0” programs the Lock bit. If LB mode 3 is programmed
(LB1 and LB2 is programmed), it is not possible to program the Boot Lock bits by any
External Programming mode.
3.
Give WR a negative pulse and wait for RDY/BSY to go high.
The Lock bits can only be cleared by executing Chip Erase.
RDY/BSY
WR
OE
RESET +12V
PAGEL
0x40
DATA
DATA
XX
XA1
XA0
BS1
XTAL1
A
C
0x40
DATA
XX
A
C
Write Fuse Low byte
Write Fuse high byte
0x40
DATA
XX
A
C
Write Extended Fuse byte
BS2