
SMBus/I 2 C Interfaced 4-Port, Level-Translating
GPIOs and LED Drivers
recipients. When the MAX7306/MAX7307 transmit to the
master, the master generates the acknowledge bit
because the master is the recipient.
Slave Address
The MAX7306/MAX7307 have a 7-bit long slave
address (Figure 12). The 8th bit following the 7-bit slave
address is the R/ W bit. Set the R/ W bit low for a write
command and high for a read command.
The first 5 bits of the MAX7306 slave address (A6–A2)
are always 1, 0, 0, 1, and 1. Slave address bits A1 and
A0 are selected by the address input AD0. AD0 can be
connected to GND, V DD , SDA, or SCL. The MAX7306
has four possible slave addresses (see Table 5), and
therefore, a maximum of four MAX7306 devices can be
controlled independently from the same interface. The
MAX7307 features a permanent slave address of 0x98.
Message Format for Writing to the MAX7306/MAX7307
A write to the MAX7306/MAX7307 comprises the trans-
mission of the MAX7306/MAX7307’s slave address with
the R/ W bit set to zero, followed by at least 1 byte of
information. The first byte of information is the command
byte. The command byte determines which register of
the MAX7306/MAX7307 is to be written to by the next
byte, if received (see Table 1). If a STOP condition is
detected after the command byte is received, the
MAX7306/MAX7307 take no further action beyond stor-
ing the command byte (see Figure 13).
Any bytes received after the command byte are data
bytes. The first data byte goes into the internal register of
the MAX7306/MAX7307 selected by the command byte
(see Figure 14). If multiple data bytes are transmitted
before a STOP condition is detected, these bytes are
generally stored in subsequent MAX7306/MAX7307
internal registers because the command byte address
START
CONDITION
CLOCK PULSE
FOR ACKNOWLEDGE
autoincrements (see Table 1).
SCL
1
2
8
9
Message Format for Reading
The MAX7306/MAX7307 are read using the MAX7306/
SDA BY
TRANSMITTER
SDA BY
MAX7307 ’s internally stored command byte as an
address pointer the same way the stored command byte
is used as an address pointer for a write. The pointer
RECEIVER
S
autoincrements after each data byte is read using the
Figure 11. Acknowledge
SDA
1
0
0
1
1
1
A0
R/W
ACK
MSB
SCL
Figure 12. Slave Address
LSB
D15
D14
D13
D12
D11
D10
D9
D8
ACKNOWLEDGE FROM MAX7306
S
SLAVE ADDRESS
0
A
REGISTER ADDRESS
A
P
Figure 13. Register Address Received
R/W
ACKNOWLEDGE FROM MAX7306
______________________________________________________________________________________
19