Data Polling Flash
When a byte is being programmed into the Flash, reading the address location being
programmed will give the value $7F. At the time the device is ready for a new byte, the
programmed value will read correctly. This is used to determine when the next byte can
be written. This will not work for the value $7F, so when programming this value, the
user will have to wait for at least tWD_PROG before programming the next byte. As a chip-
erased device contains $FF in all locations, programming of addresses that are meant
to contain $FF can be skipped.
Figure 54. Serial Programming Waveforms
Table 28. Serial Programming Instruction Set
Instruction Format
Instruction
Byte 1
Byte 2
Byte 3
Byte4
Operation
Programming Enable
1010 1100
0101 0011
xxxx xxxx
xxxx xxxx Enable serial programming while
RESET is low.
Chip Erase
1010 1100
100x xxxx
xxxx xxxx
xxxx xxxx Chip erase Flash and EEPROM
memory arrays.
Read Program Memory
0010 H000
xxxx xxaa
bbbb bbbb
oooo oooo
Read H (high or low) data o from
program memory at word address
a:b.
Write Program Memory
0100 H000
xxxx xxaa
bbbb bbbb
iiii iiii
Write H (high or low) data i to
program memory at word address
a:b.
Read EEPROM
Memory
1010 0000
xxxx xxxx
xbbb bbbb
oooo oooo Read data o from EEPROM memory
at address b.
Write EEPROM
Memory
1100 0000
xxxx xxxx
xbbb bbbb
iiii iiii Write data i to EEPROM memory at
address b.
Write Lock Bits
Read Signature Bytes
1010 1100
0011 0000
111x x21x
xxxx xxxx
xxxx xxxx
xxxx xxbb
xxxx xxxx
oooo oooo
Write Lock bits. Set bits 1,2 = “0” to
program Lock bits.
Read signature byte o at address b.(1)
Note:
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, 1 = Lock bit
1, 2 = Lock bit 2.
1. The signature bytes are not readable in lock mode 3, i.e. both Lock bits programmed.
70 AT90S2313
0839I–AVR–06/02