The MAX7313 I2C™-compatible serial interfaced
peripheral provides microprocessors with 16 I/O ports.
Each I/O port can be individually configured as either
an open-drain current-sinking output rated at 50mA and
5.5V, or a logic input with transition detection. A 17th
port can be used for transition detection interrupt, or as
a general-purpose output. The outputs are capable of
driving LEDs, or providing logic outputs with external
resistive pullup up to 5.5V.
PWM current drive is integrated with 8 bits of control.
Four bits are global control and apply to all LED outputs
to provide coarse adjustment of current from fully off to
fully on with 14 intensity steps. Each output then has
individual 4-bit control, which further divides the globally set current into 16 more steps. Alternatively, the current control can be configured as a single 8-bit control
that sets all outputs at once.
The MAX7313 is pin and software compatible with the
MAX7311, PCA9535, and PCA9555.
Each output has independent blink timing with two blink
phases. All LEDs can be individually set to be on or off
during either blink phase, or to ignore the blink control.
The blink period is controlled by a register.
The MAX7313 supports hot insertion. All port pins, the
INT output, SDA, SCL, and the slave-address inputs
ADO-2 remain high impedance in power-down (V+ =0V)
with up to 6V asserted upon them.
The MAX7313 is controlled through the 2-wire
I
2
C/SMBus serial interface, and can be configured to
any one of 64 I2C addresses.
Applications
LCD Backlights
LED Status Indication
Portable Equipment
Keypad Backlights
RGB LED Drivers
Notebook Computers
Features
♦ 400kbs, 2-Wire Serial Interface, 5.5V Tolerant
♦ 2V to 3.6V Operation
♦ Overall 8-Bit PWM LED Intensity Control
Global 16-Step Intensity Control
Individual 16-Step Intensity Controls
♦ Two-Phase LED Blinking
♦ High Output Current (50mA max Per Port)
♦ Outputs are 5.5V-Rated Open Drain
♦ Supports Hot Insertion
♦ Inputs are Overvoltage Protected to 5.5V
♦ Transition Detection with Interrupt Output
♦ 1.2µA (typ), 3.6µA (max) Standby Current
♦ Small 4mm x 4mm Thin QFN Package
♦ -40°C to +125°C Temperature Range
♦ All Ports Can Be Configured as Inputs or Outputs
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
Voltage (with respect to GND)
V+ .............................................................................-0.3V to +4V
SCL, SDA, AD0, AD1, AD2, P0–P15 ........................-0.3V to +6V
INT/O16 ....................................................................-0.3V to +8V
DC Current on P0–P15, INT/O16 ........................................55mA
DC Current on SDA.............................................................10mA
Maximum GND Current ....................................................350mA
Continuous Power Dissipation (T
A
= +70°C)
24-Pin QSOP (derate 9.5mW/°C over +70°C)..............761mW
24-Pin QFN (derate 20.8mW/°C over +70°C) ............1666mW
(Typical Operating Circuit, V+ = 2V to 3.6V, TA= T
MIN
to T
MAX
, unless otherwise noted. Typical values are at V+ = 3.3V, TA = +25°C.)
(Note 1)
Note 1: All parameters tested at TA= +25°C. Specifications over temperature are guaranteed by design.
Note 2: A master device must provide a hold time of at least 300ns for the SDA signal (referred to V
IL
of the SCL signal) to bridge
the undefined region of SCL’s falling edge.
Note 3: Guaranteed by design.
Note 4: C
b
= total capacitance of one bus line in pF. tRand tFmeasured between 0.3 x VDDand 0.7 x VDD.
Note 5: I
SINK
≤ 6mA. Cb= total capacitance of one bus line in pF. tRand tFmeasured between 0.3 x VDDand 0.7 x VDD.
Note 6: Input filters on the SDA and SCL inputs suppress noise spikes less than 50ns.
The MAX7313 is a general-purpose input/output (GPIO)
peripheral that provides 16 I/O ports, P0–P15, controlled through an I2C-compatible serial interface. A
17th output-only port, INT/O16, can be configured as
an interrupt output or as a general-purpose output port.
All output ports sink loads up to 50mA connected to
external supplies up to 5.5V, independent of the
MAX7313’s supply voltage. The MAX7313 is rated for a
ground current of 350mA, allowing all 17 outputs to sink
20mA at the same time. Figure 1 shows the output
structure of the MAX7313. The ports default to inputs on
power-up.
Port Inputs and Transition Detection
Input ports registers reflect the incoming logic levels of
the port pins, regardless of whether the pin is defined
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
4–11, 13–201–8, 10–17P0–P15Input/Output Ports. P0–P15 are open-drain I/Os rated at 5.5V, 50mA.
129GNDGround. Do not sink more than 350mA into the GND pin.
2219SCLI2C-Compatible Serial Clock Input
2320SDAI2C-Compatible Serial Data I/O
2421V+
—PADExposed padExposed pad on package underside. Connect to GND.
DATA FROM
SHIFT REGISTER
DATA FROM
SHIFT REGISTER
CONFIGURATION
WRITE PULSE
NAMEFUNCTION
Output Port. Open-drain output rated at 7V, 50mA. Configurable as interrupt
output or general-purpose output.
AD0, AD1,
AD2
Address Inputs. Sets device slave address. Connect to either GND, V+,
SCL, or SDA to give 64 logic combinations. See Table 1.
Positive Supply Voltage. Bypass V+ to GND with a 0.047µF ceramic
capacitor.
CONFIGURATION
REGISTER
D
Q
OUTPUT
PORT
REGISTER
Q
D
Q
FF
C
Q
K
WRITE
PULSE
FF
C
K
OUTPUT PORT
REGISTER DATA
I/O PIN
Q2
READ PULSE
INPUT PORT
REGISTER
D
Q
FF
C
Q
K
GND
INPUT PORT
REGISTER DATA
TO INT
Page 7
as an input or an output. Reading an input ports register latches the current-input logic level of the affected
eight ports. Transition detection allows all ports configured as inputs to be monitored for changes in their
logic status. The action of reading an input ports register samples the corresponding 8 port bits’ input conditions. This sample is continuously compared with the
actual input conditions. A detected change in input
condition causes the INT/O16 interrupt output to go
low, if configured as an interrupt output. The interrupt is
cleared either automatically if the changed input
returns to its original state, or when the appropriate
input ports register is read.
The INT/O16 pin can be configured as either an interrupt output or as a 17th output port with the same static
or blink controls as the other 16 ports (Table 4).
Port Output Control and LED Blinking
The two blink phase 0 registers set the output logic levels of the 16 ports P0–P15 (Table 8). These registers
control the port outputs if the blink function is disabled.
A duplicate pair of registers, the blink phase 1 registers, are also used if the blink function is enabled
(Table 9). In blink mode, the port outputs can be
flipped between using the blink phase 0 registers and
the blink phase 1 registers using software control (the
blink flip flag in the configuration register) (Table 4).
PWM Intensity Control
The MAX7313 includes an internal oscillator, nominally
32kHz, to generate PWM timing for LED intensity control. PWM intensity control can be enabled on an output-by-output basis, allowing the MAX7313 to provide
any mix of PWM LED drives and glitch-free logic outputs (Table 10). PWM can be disabled entirely, in
which case all output ports are static and the MAX7313
operating current is lowest because the internal oscillator is turned off.
PWM intensity control uses a 4-bit master control and 4
bits of individual control per output (Tables 13, 14). The
4-bit master control provides 16 levels of overall intensity control, which applies to all PWM-enabled output
ports. The master control sets the maximum pulse
width from 1/15 to 15/15 of the PWM time period. The
individual settings comprise a 4-bit number further
reducing the duty cycle to be from 1/16 to 15/16 of the
time window set by the master control.
For applications requiring the same PWM setting for all
output ports, a single global PWM control can be used
instead of all the individual controls to simplify the control software and provide 240 steps of intensity control
(Tables 10 and 13).
Standby Mode
When the serial interface is idle and the PWM intensity
control is unused, the MAX7313 automatically enters
standby mode. If the PWM intensity control is used, the
operating current is slightly higher because the internal
PWM oscillator is running. When the serial interface is
active, the operating current also increases because
the MAX7313, like all I2C slaves, has to monitor every
transmission.
Serial Interface
Serial Addressing
The MAX7313 operates as a slave that sends and
receives data through an I2C-compatible 2-wire interface. The interface uses a serial data line (SDA) and a
serial clock line (SCL) to achieve bidirectional communication between master(s) and slave(s). A master (typically a microcontroller) initiates all data transfers to and
from the MAX7313 and generates the SCL clock that
synchronizes the data transfer (Figure 2).
The MAX7313 SDA line operates as both an input and
an open-drain output. A pullup resistor, typically 4.7kΩ,
is required on SDA. The MAX7313 SCL line operates
only as an input. A pullup resistor, typically 4.7kΩ, is
required on SCL if there are multiple masters on the 2wire interface, or if the master in a single-master system
has an open-drain SCL output.
Each transmission consists of a START condition
(Figure 3) sent by a master, followed by the MAX7313
7-bit slave address plus R/W bit, a register address
byte, one or more data bytes, and finally a STOP condition (Figure 3).
Start and Stop Conditions
Both SCL and SDA remain high when the interface is
not busy. A master signals the beginning of a transmission with a START (S) condition by transitioning SDA
from high to low while SCL is high. When the master
has finished communicating with the slave, it issues a
STOP (P) condition by transitioning SDA from low to
high while SCL is high. The bus is then free for another
transmission (Figure 3).
Bit Transfer
One data bit is transferred during each clock pulse.
The data on SDA must remain stable while SCL is high
(Figure 4).
Acknowledge
The acknowledge bit is a clocked 9th bit that the recipient uses to handshake receipt of each byte of data
(Figure 5). Thus, each byte transferred effectively
requires 9 bits. The master generates the 9th clock
pulse, and the recipient pulls down SDA during the
acknowledge clock pulse so the SDA line is stable low
during the high period of the clock pulse. When the
master is transmitting to the MAX7313, the device generates the acknowledge bit because the MAX7313 is
the recipient. When the MAX7313 is transmitting to the
master, the master generates the acknowledge bit
because the master is the recipient.
Slave Address
The MAX7313 has a 7-bit long slave address (Figure 6).
The eighth bit following the 7-bit slave address is the
R/W bit. The R/W bit is low for a write command, high
for a read command.
The slave address bits A6 through A0 are selected by
the address inputs AD0, AD1, and AD2. These pins can
be connected to GND, V+, SDA, or SCL. The MAX7313
has 64 possible slave addresses (Table 1) and, therefore, a maximum of 64 MAX7313 devices can be controlled independently from the same interface.
Message Format for Writing the MAX7313
A write to the MAX7313 comprises the transmission of
the MAX7313’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 MAX7313 is to be
written to by the next byte, if received (Table 2). If a
STOP condition is detected after the command byte is
received, then the MAX7313 takes no further action
beyond storing the command byte.
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
Any bytes received after the command byte are data
bytes. The first data byte goes into the internal register
of the MAX7313 selected by the command byte (Figure
8). If multiple data bytes are transmitted before a STOP
condition is detected, these bytes are generally stored
in subsequent MAX7313 internal registers because the
command byte address autoincrements (Table 2). A
diagram of a write to the output ports registers (blink
phase 0 registers or blink phase 1 registers) is given in
Figure 10.
Message Format for Reading
The MAX7313 is read using the MAX7313’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 autoincrements after
each data byte is read using the same rules as for a
write (Table 2). Thus, a read is initiated by first configuring the MAX7313’s command byte by performing a
write (Figure 7). The master can now read n consecu-
tive bytes from the MAX7313 with the first data byte
being read from the register addressed by the initialized command byte. When performing read-after-write
verification, remember to reset the command byte’s
address because the stored command byte address
has been autoincremented after the write (Table 2). A
diagram of a read from the input ports registers is
shown in Figure 10 reflecting the states of the ports.
Operation with Multiple Masters
If the MAX7313 is operated on a 2-wire interface with
multiple masters, a master reading the MAX7313 should
use a repeated start between the write, which sets the
MAX7313’s address pointer, and the read(s) that takes
the data from the location(s) (Table 2). This is because it
is possible for master 2 to take over the bus after master
1 has set up the MAX7313’s address pointer but before
master 1 has read the data. If master 2 subsequently
changes the MAX7313’s address pointer, then master
1’s delayed read can be from an unexpected location.
The command address stored in the MAX7313 circulates around grouped register functions after each data
byte is written or read (Table 2).
Device Reset
If a device reset input is needed, consider the
MAX7314. The MAX7314 includes a RST input, which
clears any transaction to or from the MAX7314 on the
serial interface and configures the internal registers to
the same state as a power-up reset.
Detailed Description
Initial Power-Up
On power-up all control registers are reset and the
MAX7313 enters standby mode (Table 3). Power-up
status makes all ports into inputs and disables both the
PWM oscillator and blink functionality.
Configuration Register
The configuration register is used to configure the PWM
intensity mode, interrupt, and blink behavior, operate
the INT/O16 output, and read back the interrupt status
(Table 4).
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
The 16 I/O ports P0 through P15 can be configured to
any combination of inputs and outputs using the ports
configuration registers (Table 5). The INT/O16 output
can also be configured as an extra general-purpose
output using the configuration register (Table 4).
Input Ports
The input ports registers are read only (Table 6). They
reflect the incoming logic levels of the ports, regardless
of whether the port is defined as an input or an output
by the ports configuration registers. Reading an input
ports register latches the current-input logic level of the
affected eight ports. A write to an input ports register is
ignored.
Transition Detection
All ports configured as inputs are always monitored for
changes in their logic status. The action of reading an
input ports register or writing to the configuration register samples the corresponding 8 port bits’ input condition (Tables 4, 6). This sample is continuously
compared with the actual input conditions. A detected
change in input condition causes an interrupt condition.
The interrupt is cleared either automatically if the
changed input returns to its original state, or when the
appropriate input ports register is read, updating the
compared data (Figure 10). Randomly changing a port
from an output to an input may cause a false interrupt
to occur if the state of the input does not match the
content of the appropriate input ports register. The
interrupt status is available as the interrupt flag INT in
the configuration register (Table 4).
The input status of all ports are sampled immediately
after power-up as part of the MAX7313’s internal initialization, so if all the ports are pulled to valid logic levels
at that time an interrupt does not occur at power-up.
INT
/O16 Output
The INT/O16 output pin can be configured as either the
INT output that reflects the interrupt flag logic state or
as a general-purpose output O16. When used as a
general-purpose output, the INT/O16 pin has the same
blink and PWM intensity control capabilities as the
other ports.
Disable global intensity control—intensity
is set by registers 0x10–0x17 for ports P0
through P15 when configured as outputs,
and by D3–D0 of register 0x0E for
INT/O16 when INT/O16 pin is configured
as an output port
XXXXX0XX
Enable global intensity control—intensity
for all ports configured as outputs is set
by D3–D0 of register 0x0E
XXXXX1XX
Disable data change interrupt—INT/O16
output is controlled by the O0 and O1 bits
XXXX0XXX
Enable data change interrupt—INT/O16
output is controlled by port input data
change
XXXX1XXX
INT/O16 output is low (blink is disabled)
XXX00XX0
INT/O16 output is high impedance (blink
is disabled)
XXX10XX0
INT/O16 outp ut i s l ow d ur i ng b l i nk p hase 0
XXX00XX1
INT/O16 output is high impedance during
blink phase 0
XXX10XX1
INT/O16 outp ut i s l ow d ur i ng b l i nk p hase 1
XX0X0XX1
INT/O16 output is high impedance during
blink phase 1
XX1X0XX1
Read-back data change interrupt status
—data change is not detected, and
INT/O16 output is high when interrupt
enable (I bit) is set
00XXXXXX
Read-back data change interrupt status
—data change is detected, and INT/O16
output is low when interrupt enable (I bit)
is set
0x0F
10XXXXXX
X = Don’t care.
R/W
0
1
—
—
—
—
INT
O1
—
—
—
—
—
—
1
1
Page 16
MAX7313
Set the interrupt enable I bit in the configuration register
to configure INT/O16 as the INT output (Table 4). Clear
interrupt enable to configure INT/O16 as the O16. O16
logic state is set by the 2 bits O1 and O0 in the configuration register. O16 follows the rules for blinking selected by the blink enable flag E in the configuration
register. If blinking is disabled, then interrupt output
control O0 alone sets the logic state of the INT/O16 pin.
If blinking is enabled, then both interrupt output controls O0 and O1 set the logic state of the INT/O16 pin
according to the blink phase. PWM intensity control for
O16 is set by the 4 global intensity bits in the master
and O16 intensity register (Table 13).
Blink Mode
In blink mode, the output ports can be flipped between
using either the blink phase 0 registers or the blink
phase 1 registers. Flip control is by software control
(the blink flip flag B in the configuration register) (Table
4). If hardware flip control is needed, consider the
MAX7314, which includes a BLINK input, as well as
software control.
The blink function can be used for LED effects by programming different display patterns in the two sets of
output port registers, and using the software or hardware controls to flip between the patterns.
If the blink phase 1 registers are written with 0xFF, then
the BLINK input can be used as a hardware disable to,
for example, instantly turn off an LED pattern pro-
grammed into the blink phase 0 registers. This technique can be further extended by driving the BLINK
input with a PWM signal to modulate the LED current to
provide fading effects.
The blink mode is enabled by setting the blink enable
flag E in the configuration register (Table 4). When blink
mode is enabled, the state of the blink flip flag sets the
phase, and the output ports are set by either the blink
phase 0 registers or the blink phase 1 registers (Table 7).
The blink mode is disabled by clearing the blink enable
flag E in the configuration register (Table 4). When blink
mode is disabled, the state of the blink flip flag is
ignored, and the blink phase 0 registers alone control
the output ports.
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
When the blink function is disabled, the two blink phase
0 registers set the logic levels of the 16 ports (P0
through P15) when configured as outputs (Table 8). A
duplicate pair of registers called the blink phase 1 registers are also used if the blink function is enabled (Table
9). A logic high sets the appropriate output port high
impedance, while a logic low makes the port go low.
Reading a blink phase register reads the value stored
in the register, not the actual port condition. The port
output itself may or may not be at a valid logic level,
depending on the external load connected.
The 17th output, O16, is controlled through 2 bits in the
configuration register, which provide the same static or
blink control as the other 16 output ports.
PWM Intensity Control
The MAX7313 includes an internal oscillator, nominally
32kHz, to generate PWM timing for LED intensity control or other applications such as PWM trim DACs.
PWM can be disabled entirely for all the outputs. In this
case, all outputs are static and the MAX7313 operating
current is lowest because the internal PWM oscillator is
turned off.
The MAX7313 can be configured to provide any combination of PWM outputs and glitch-free logic outputs.
Each PWM output has an individual 4-bit intensity control (Table 14). When all outputs are to be used with the
same PWM setting, the outputs can be controlled
together instead using the global intensity control
(Table 13). Table 10 shows how to set up the MAX7313
to suit a particular application.
PWM Timing
The PWM control uses a 240-step PWM period, divided
into 15 master intensity timeslots. Each master intensity
timeslot is divided further into 16 PWM cycles (Figure 11).
The master intensity operates as a gate, allowing the individual output settings to be enabled from 1 to 15 timeslots
per PWM period (Figures 12, 13, 14) (Table 13).
Each output’s individual 4-bit intensity control only
operates during the number of timeslots gated by the
master intensity. The individual controls provide 16
intensity settings from 1/16 through 16/16 (Table 14).
Figures 15, 16, and 17 show examples of individual
intensity control settings. The highest value an individual or global setting can be set to is 16/16. This setting
forces the output to ignore the master control, and follow the logic level set by the appropriate blink phase
register bit. The output becomes a glitch-free static output with no PWM.
Set the master, O16 intensity register 0x0E to any value 0x00 to 0x0F.
All outputs static without PWM
A mix of static and PWM outputs, with PWM
outputs using different PWM settings
A mix of static and PWM outputs, with PWM
outputs all using the same PWM setting
All outputs PWM using the same PWM
setting
The global intensity G bit in the configuration register is don't care.
The output intensity registers 0x10 through 0x17 are don't care.
Set the master, O16 intensity register 0x0E to any value from 0x10 to 0xFF.
Clear global intensity G bit to 0 in the configuration register to disable global intensity
control.
For the static outputs, set the output intensity value to 0xF.
For the PWM outputs, set the output intensity value in the range 0x0 to 0xE.
As above. Global intensity control cannot be used with a mix of static and PWM
outputs, so write the individual intensity registers with the same PWM value.
Set the master, O16 intensity register 0x0E to any value except from 0x10 to 0xFF.
Set global intensity G bit to 1 in the configuration register to enable global intensity
control.
The master, O16 intensity register 0x0E is the only intensity register used.
The output intensity registers 0x10 through 0x17 are don't care.
When blink is disabled (Table 7), the blink phase 0 registers specify each output’s logic level during the PWM
on-time (Table 8). The effect of setting an output’s blink
phase 0 register bit to 0 or 1 is shown in Table 11. With
its output bit set to zero, an LED can be controlled with
16 intensity settings from 1/16th duty through fully on,
but cannot be turned fully off using the PWM intensity
control. With its output bit set to 1, an LED can be controlled with 16 intensity settings from fully off through
15/16th duty.
Using PWM Intensity Controls with Blink Enabled
When blink is enabled (Table 7), the blink phase 0 registers and blink phase 1 registers specify each output’s
logic level during the PWM on-time during the respective
blink phases (Tables 8 and 9). The effect of setting an
output’s blink phase x register bit to 0 or 1 is shown in
Table 12. LEDs can be flipped between either directly on
and off, or between a variety of high/low PWM intensities.
Global/O16 Intensity Control
The 4 bits used for output O16’s PWM individual intensity setting also double as the global intensity control
(Table 13). Global intensity simplifies the PWM settings
when the application requires them all to be the same,
such as for backlight applications, by replacing the 17
individual settings with 1 setting. Global intensity is
enabled with the Global Intensity flag G in the configuration register (Table 4). When global PWM control is
used, the 4 bits of master intensity and 4 bits of global
intensity effectively combine to provide an 8 bit, 240step intensity control applying to all outputs.
It is not possible to apply global PWM control to a subset of the ports, and use the others as logic outputs. To
mix static logic outputs and PWM outputs, individual
PWM control must be selected (Table 10).
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
0x78/168/168/168/16Output is half intensity during both blink phases
0x89/167/167/169/16
0x910/166/166/1610/16
0xA11/165/165/1611/16
0xB12/164/164/1612/16
0xC13/163/163/1613/16
0xD14/162/162/1614/16
0xE15/161/161/1615/16
0xFStatic lowStatic low
PWM DUTY CYCLE
OUTPUT BLINK
PHASE X
REGISTER BIT = 0
LOW
TIME
HIGH
TIME
PWM DUTY CYCLE
OUTPUT BLINK
PHASE X
REGISTER BIT = 1
LOW
TIME
Static high
impedance
HIGH
TIME
Static high
impedance
EXAMPLES OF LED BLINK BEHAVIOR
(LED IS ON WHEN OUTPUT IS LOW)
BLINK PHASE 0
REGISTER BIT = 0
BLINK PHASE 1
REGISTER BIT = 1
P hase 0: LE D on at l ow i ntensi ty
P hase 1: LE D on at hi g h i ntensi ty
P hase 0: LE D on at hi g h i ntensi ty
P hase 1: LE D on at l ow i ntensi ty
Phase 0: LED on continuously
Phase 1: LED off continuously
BLINK PHASE 0
REGISTER BIT = 1
BLINK PHASE 1
REGISTER BIT = 0
P hase 0: LE D on at hi g h i ntensi ty
P hase 1: LE D on at l ow i ntensi ty
P hase 0: LE D on at l ow i ntensi ty
P hase 1: LE D on at hi g h i ntensi ty
Phase 0: LED off continuously
Phase 1: LED on continuously
Page 21
Applications Information
Hot Insertion
I/O ports P0–P15, interrupt output INT/016, and serial
interface SDA, SCL, AD0–2 remain high impedance
with up to 6V asserted on them when the MAX7313 is
powered down (V+ = 0V). The MAX7313 can therefore
be used in hot-swap applications.
Output Level Translation
The open-drain output architecture allows the ports to
level translate the outputs to higher or lower voltages
than the MAX7313 supply. An external pullup resistor
can be used on any output to convert the high-impedance logic-high condition to a positive voltage level.
The resistor can be connected to any voltage up to
5.5V. For interfacing CMOS inputs, a pullup resistor
value of 220kΩ is a good starting point. Use a lower
resistance to improve noise immunity, in applications
where power consumption is less critical, or where a
faster rise time is needed for a given capacitive load.
Compatibility with MAX7311
The MAX7313 is pin compatible and software compatible
with the standard register structure used by MAX7311,
PCA9535, and PCA9555. However, some MAX7311 functions are not implemented in the MAX7313, and the
MAX7313’s PWM and blink functionality is not supported
in the MAX7311. Software compatibility is clearly not
100%, but the MAX7313 was designed so the subset
(omitted) features default to the same power-up behavior
as the MAX7311, PCA9535, and PCA9555, and superset
features do not use existing registers in a different way. In
practice, many applications can use the MAX7313 as a
drop-in replacement for the MAX7311.
No registers0x0B, 0x0C Blink phase 1 registersNot implemented
No register0x0EMaster, O16 intensity registerNot implemented
No register0x0FConfiguration registerNot implemented
No registers0x10–0x17Outputs intensity registersNot implemented
ADDRESSMAX7313 IMPLEMENTATION
Not implemented; register writes are
ignored; register reads return 0x00
MAX7311, PCA9535,
PCA9555
IMPLEMENTATION
Implemented;
power-up default is
0x00
COMMENTS
If polarity inversion feature
is unused, MAX7313
defaults to correct state
Power-up default disables
the blink and intensity
(PWM) features
Page 24
MAX7313
Driving LED Loads
When driving LEDs, a resistor in series with the LED
must be used to limit the LED current to no more than
50mA. Choose the resistor value according to the following formula:
R
LED
= (V
SUPPLY
- V
LED
- VOL) / I
LED
where:
R
LED
is the resistance of the resistor in series with the
LED (Ω).
V
SUPPLY
is the supply voltage used to drive the LED (V).
V
LED
is the forward voltage of the LED (V).
VOLis the output low voltage of the MAX7313 when
sinking I
LED
(V).
I
LED
is the desired operating current of the LED (A).
For example, to operate a 2.2V red LED at 14mA from a
5V supply, R
LED
= (5 - 2.2 - 0.25) / 0.014 = 182Ω.
Driving Load Currents Higher than 50mA
The MAX7313 can be used to drive loads drawing more
than 50mA, like relays and high-current white LEDs, by
paralleling outputs. Use at least one output per 50mA of
load current; for example, a 5V 330mW relay draws
66mA and needs two paralleled outputs to drive it.
Ensure that the paralleled outputs chosen are controlled
by the same blink phase register, i.e., select outputs
from the P0 through P7 range, or the P8 through P15
range. This way, the paralleled outputs are turned on
and off together. Do not use output O16 as part of a
load-sharing design. O16 cannot be switched at the
same time as any of the other outputs because it is controlled by a different register.
The MAX7313 must be protected from the negative
voltage transient generated when switching off inductive loads, such as relays, by connecting a reversebiased diode across the inductive load (Figure 18). The
peak current through the diode is the inductive load’s
operating current.
Power-Supply Considerations
The MAX7313 operates with a power-supply voltage of
2V to 3.6V. Bypass the power supply to GND with at
least 0.047µF as close to the device as possible.
For the QFN version, connect the underside exposed
pad to GND.
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/packages
.)
QSOP.EPS
PACKAGE OUTLINE, QSOP .150", .025" LEAD PITCH
21-0055
1
E
1
Page 27
MAX7313
16-Port I/O Expander with LED Intensity
Control, Interrupt, and Hot-Insertion Protection
Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are
implied. Maxim reserves the right to change the circuitry and specifications without notice at any time.
Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 ____________________ 27
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/packages