ADM1063
•
To erase a page of EEPROM memory. EEPROM memory
In the ADM1063, the write byte/word protocol is used for
three purposes:
can be written to only if it is unprogrammed. Before writing
to one or more EEPROM memory locations that are already
programmed, the page(s) containing those locations must
first be erased. EEPROM memory is erased by writing a
command byte.
•
To write a single byte of data to RAM. In this case, the
command byte is the RAM addresses from 0x00 to 0xDF
and the only data byte is the actual data, as shown in
Figure 44.
The master sends a command code that tells the slave device
to erase the page. The ADM1063 command code for a page
erasure is 0xFE (1111 1110). Note that, for a page erasure
to take place, the page address must be given in the previous
write word transaction (see the Write Byte/Word section).
Also, Bit 2 in the UPDCFG register (Address 0x90) must
be set to 1.
1
2
3
4
5
6
7
8
RAM
SLAVE
ADDRESS
S
W
A
ADDRESS
A
DATA
A
P
(0x00 TO 0xDF)
Figure 44. Single Byte Write to RAM
•
To set up a 2-byte EEPROM address for a subsequent
read, write, block read, block write, or page erase. In this
case, the command byte is the high byte of the EEPROM
addresses from 0xF8 to 0xFB. The only data byte is the low
byte of the EEPROM address, as shown in Figure 45.
1
2
3
4
5
6
COMMAND
BYTE
(0xFE)
SLAVE
ADDRESS
S
W
A
A
P
Figure 43. EEPROM Page Erasure
1
2
3
4
5
6
7
8
EEPROM
ADDRESS
EEPROM
ADDRESS
As soon as the ADM1063 receives the command byte,
page erasure begins. The master device can send a stop
command as soon as it sends the command byte. Page
erasure takes approximately 20 ms. If the ADM1063 is
accessed before erasure is complete, it responds with a
no acknowledge (NACK).
SLAVE
ADDRESS
S
W
A
A
A
P
HIGH BYTE
(0xF8 TO 0xFB)
LOW BYTE
(0x00 TO 0xFF)
Figure 45. Setting an EEPROM Address
Note that for page erasure, because a page consists of
32 bytes, only the 3 MSBs of the address low byte are
important. The lower five bits of the EEPROM address
low byte specify the addresses within a page and are
ignored during an erase operation.
Write Byte/Word
In a write byte/word operation, the master device sends a
command byte and one or two data bytes to the slave device,
as follows:
•
To write a single byte of data to EEPROM. In this case, the
command byte is the high byte of the EEPROM addresses
from 0xF8 to 0xFB. The first data byte is the low byte of the
EEPROM address, and the second data byte is the actual
data, as shown in Figure 46.
1. The master device asserts a start condition on SDA.
2. The master sends the 7-bit slave address followed by the
write bit (low).
1
2
3
4
5
6
7
8
9
10
3. The addressed slave device asserts ACK on SDA.
4. The master sends a command code.
5. The slave asserts ACK on SDA.
EEPROM
ADDRESS
EEPROM
ADDRESS
SLAVE
S
W
A
A
A
DATA
A
P
ADDRESS
HIGH BYTE
(0xF8 TO 0xFB)
LOW BYTE
(0x00 TO 0xFF)
Figure 46. Single Byte Write to EEPROM
Block Write
6. The master sends a data byte.
In a block write operation, the master device writes a block of
data to a slave device. The start address for a block write must
have been set previously. In the ADM1063, a send byte opera-
tion sets a RAM address, and a write byte/word operation sets
an EEPROM address, as follows:
7. The slave asserts ACK on SDA.
8. The master sends a data byte or asserts a stop condition.
9. The slave asserts ACK on SDA.
1. The master device asserts a start condition on SDA.
10. The master asserts a stop condition on SDA to end
the transaction.
2. The master sends the 7-bit slave address followed by
the write bit (low).
3. The addressed slave device asserts ACK on SDA.
Rev. 0 | Page 30 of 36