beautypg.com

Reading the flash, Reading the eeprom, Programming the fuse bits – Rainbow Electronics ATmega103L User Manual

Page 99: Programming the lock bits

background image

ATmega603/103

99

Reading The Flash

The algorithm for reading the Flash memory is as follows (refer to Programming the Flash for details on Command and
Address loading):

1.

A: Load Command ‘0000 0010’.

2.

H: Load Address High Byte ($00-$7F/$FF)

3.

B: Load Address Low Byte ($00 - $FF)

4.

Set OE to ‘0’, and BS1 to ‘0’. The Flash word low byte can now be read at DATA

5.

Set BS to ‘1’. The Flash word high byte can now be read at DATA

6.

Set OE to ‘1’.

Reading The EEPROM

The algorithm for reading the EEPROM memory is as follows (refer to Programming the Flash for details on Command and
Address loading):

1.

A: Load Command ‘0000 0011’.

2.

H: Load Address High Byte ($00-$07/$0F)

3.

B: Load Address ($00 - $FF)

4.

Set OE to ‘0’, and BS1 to ‘0’. The EEPROM Data byte can now be read at DATA

5.

Set OE to ‘1’.

Programming The Fuse Bits

The algorithm for programming the Fuse bits is as follows (refer to Programming the Flash for details on Command and
Data loading):

1.

A: Load Command ‘0100 0000’.

2.

C: Load Data Low Byte. Bit n = ‘0’ programs and bit n = ‘1’ erases the Fuse bit.

Bit 5 = SPIEN Fuse bit
Bit 3 = EESAVE Fuse bit
Bit 2 = always ‘1’
Bit 1 = SUT1 Fuse bit
Bit 0 = SUT0 Fuse bit

Bit 7, 6,4,2 = ‘1’. These bits are reserved and should be left unprogrammed (‘1’).

3.

Give WR a

t

WLWH_PFB

wide negative pulse to execute the programming,

t

WLWH_PFB

is found in Table 42. Programming

the Fuse bits does not generate any activity on the RDY/BSY pin.

Programming the Lock Bits

The algorithm for programming the Lock bits is as follows (refer to Programming the Flash for details on Command and
Data loading):

1.

A: Load Command ‘0010 0000’.

2.

D: Load Data Low Byte. Bit n = ‘0’ programs the Lock bit.

Bit 2 = Lock Bit2
Bit 1 = Lock Bit1

Bit 7-3,0 = ‘1’. These bits are reserved and should be left unprogrammed (‘1’).

3.

L: Write Data Low Byte.

The Lock bits can only be cleared by executing Chip Erase.