5/26
M24C16, M24C08, M24C04, M 24C02, M24C01
DEVICE OPERATION
The device supports the I
2
C proto col. This is summarized in Figure 5. Any device that sends data on
to the bus is defined to be a transmi tter, and any
device that reads the data to be a receiver. The
device that controls the data trans fer is known as
the bus master, and the other as the slave device.
A data transfer can only be initiated by the bus
master , w hic h w ill also provide t he s er ial cloc k f or
synchronization. The M24Cxx device is always a
slave in all communication.
Start Condition
Start is identified by a falling edge of Serial Data
(SDA) while Serial Clock (SCL) is stable in the
High state. A Start condition must precede any
data transfer command. The dev ice continuously
monitors (except during a Write cycle) Serial Data
(SDA) and Serial Clock (SCL) for a Start condition,
and will not respond unless one is given.
Stop Condition
Stop is identified by a rising edg e of Serial Data
(SDA) while Serial Clock (SCL) is stable and driven High. A Stop condition terminates communication between the device and the bus master. A
Read command that is followed by NoAck can be
followed by a Stop condition to force the device
into the Stand-by mode. A Stop condition at the
end of a Write command triggers th e internal EEPROM W r ite cycle.
Acknowledge Bit (ACK)
The acknowledge bit is used to indicate a successful byte transfer. The bus transmitter, whether it be
bus master or slave device, releases Serial Data
(SDA) after sending eight bits of data. During the
9
th
clock pulse period, the receiver pulls Serial
Data (SDA) Low to acknowledge the receipt of the
eight data bits.
Data Input
During data input, the device samples Serial Data
(SDA) on the rising edge of Serial Clock (SCL).
For correct device operation, Serial Data (SDA)
must be stable during the rising edge of Serial
Clock (SCL), and the Serial Data (SDA) signal
must change
only
when Serial Clock (SCL) is driv-
en Low.
Memory Addressing
To start communication be tween the bus master
and the slave device, the bus m aste r must initiate
a Start condition. Following this, the bus master
sends the Device Select Code, shown i n Table 2
(on Serial Data (SDA), most significant bit first).
The Device Select Code consists of a 4-bit Device
Type Identifier, and a 3-bit Chip Enable “Address”
(E2, E1, E0). To address the memory array, the 4bit Device Type Identifier is 1010b.
When the Device Select Code is received on Serial Data (SDA), the device only responds if the Chip
Enable Address is the same as the value on the
Chip Enable (E0, E1, E2) inputs.
The 8
th
bit is the Read/Write bit (RW). This bit is
set to 1 for Read and 0 for Write operations.
If a match occurs on the Device Select code , the
corresponding device gives an acknowledgment
on Serial Data (SDA) during the 9
th
bit time. If the
device does not match the Device Select code, it
deselects itself from the bus, and goes into Standby mode.
Devices with larger memory capacities (the
M24C16, M24C08 and M24C04) need more address bits. E0 i s not available f or use on dev ices
that need to use address line A8; E1 is not available for devices that need to use addres s line A9,
and E2 is not available for devices that need to use
address line A10 (see Figure 3 and Table 2 for details). Using the E0, E1 and E2 inputs pins, up to
eight M24C02 (or M24C01), four M24C04, two
M24C08 or one M24C16 device can be connected
to one I
2
C bus. In each case, and in the hybrid cases, this gives a total memory capacity of 16 Kbits,
2 KBytes (except where M24C01 devices are
used).
Table 3. Operating Modes
Note: 1. X = V
IH
or V
IL
.
Mode RW bit
WC
1
Bytes Initial Sequence
Current Address Read 1 X 1 START, Device Select, RW
= 1
Random Address Read
0X
1
START, Device Select, RW
= 0, Address
1 X reSTART, Device Select, RW
= 1
Sequential Read 1 X
≥
1 Similar to Current or Random Address Read
Byte Write 0
V
IL
1 START, Device Select, RW = 0
Page Write 0
V
IL
≤
16 START, Device Select, RW
= 0