beautypg.com

Table 94, Atmega8515(l) – Rainbow Electronics ATmega8515L User Manual

Page 192

background image

192

ATmega8515(L)

2512A–AVR–04/02

Note:

a = address high bits
b = address low bits
H = 0 - Low byte, 1 - High Byte
o = data out
i = data in
x = don’t care

Table 94. Serial Programming Instruction Set

Instruction

Instruction Format

Operation

Byte 1

Byte 2

Byte 3

Byte4

Programming Enable

1010 1100

0101 0011

xxxx xxxx

xxxx xxxx

Enable Serial Programming after
RESET goes low.

Chip Erase

1010 1100

100x xxxx

xxxx xxxx

xxxx xxxx

Chip Erase EEPROM and Flash.

Read Program Memory

0010 H000

0000 aaaa

bbbb bbbb

oooo oooo

Read H (high or low) data o from
Program memory at word address
a:b.

Load Program Memory
Page

0100 H000

0000 xxxx

xxxb bbbb

iiii iiii

Write H (high or low) data i to
Program Memory page at word
address b. Data low byte must be
loaded before Data high byte is
applied within the same address.

Write Program Memory
Page

0100 1100

0000 aaaa

bbb

x xxxx

xxxx xxxx

Write Program Memory Page at
address a:b.

Read EEPROM Memory

1010 0000

00xx xxxa

bbbb bbbb

oooo oooo

Read data o from EEPROM
memory at address a:b.

Write EEPROM Memory

1100 0000

00xx xxxa

bbbb bbbb

iiii iiii

Write data i to EEPROM memory at
address a:b.

Read Lock Bits

0101 1000

0000 0000

xxxx xxxx

xxoo oooo

Read Lock bits. “0” = programmed,
“1” = unprogrammed. See

Table

81 on page 175

for details.

Write Lock Bits

1010 1100

111x xxxx

xxxx xxxx

11ii iiii

Write Lock bits. Set bits = “0” to
program Lock bits. See

Table 81

on page 175

for details.

Read Signature Byte

0011 0000

00xx xxxx

xxxx xxbb

oooo oooo

Read Signature Byte o at address
b.

Write Fuse Bits

1010 1100

1010 0000

xxxx xxxx

iiii iiii

Set bits = “0” to program, “1” to
unprogram. See

Table 84 on

page 177

for details.

Write Fuse High Bits

1010 1100

1010 1000

xxxx xxxx

iiii iiii

Set bits = “0” to program, “1” to
unprogram. See

Table 83 on

page 176

for details.

Read Fuse Bits

0101 0000

0000 0000

xxxx xxxx

oooo oooo

Read Fuse bits. “0” = programmed,
“1” = unprogrammed. See

Table

84 on page 177

for details.

Read Fuse High Bits

0101 1000

0000 1000

xxxx xxxx

oooo oooo

Read Fuse high bits. “0” = pro-
grammed, “1” = unprogrammed.
See

Table 83 on page 176

for

details.

Read Calibration Byte

0011 1000

00xx xxxx

0000 0000

oooo oooo

Read Calibration Byte