MAXIM MAX7314AEG

19-3170; Rev 4; 4/05
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
Features
The MAX7314 I2C™-compatible serial interfaced peripheral provides microprocessors with 16 I/O ports plus one
output-only port and one input-only port. 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. The output-only port can
be assigned as an interrupt output for transition detection. The outputs are capable of driving LEDs, or providing logic outputs with external resistive pullup up to 5.5V.
♦ 400kbps, 2-Wire Serial Interface, 5.5V Tolerant
Eight-bit PWM current control is built in for all 17 output
ports. A 4-bit global control applies to all LED outputs
and provides coarse adjustment of current from fully off
to fully on with 14 intensity steps in between. Each output has an 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.
♦ Outputs are 5.5V-Rated Open Drain
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 clock input (up to 1kHz)
on BLINK or by a register. The BLINK input can also be
used as a logic control to turn the LEDs on and off, or as a
general-purpose input.
The MAX7314 supports hot insertion. All port pins, the
INT output, SDA, SCL, RST, BLINK, and the slave
address input ADO remain high impedance in powerdown (V+ = 0V) with up to 6V asserted upon them.
♦ 2V to 3.6V Operation
♦ Overall 8-Bit PWM LED Intensity Control
Global 16-Step Intensity Control
Individual 16-Step Intensity Controls
♦ 2-Phase LED Blinking
♦ 50mA Maximum Port Output Current
♦ Supports Hot Insertion
♦ Inputs are Overvoltage Protected to 5.5V
♦ Transition Detection with Interrupt Output
♦ 1.2µA (typ), 3.6µA (max) Operating Current
♦ Small 4mm x 4mm, Thin QFN Package
♦ -40°C to +125°C Temperature Range
Ordering Information
PART
24 Thin QFN
-40°C to +125°C 4mm x 4mm
x 0.8mm
MAX7314AEG
-40°C to +125°C 24 QSOP
T2444-4
—
5V
3.3V
0.047µF
µC
SDA
SCL
I/O
I/O
INT
V+
P0
P1
SDA MAX7314
SCL
BLINK
RST
INT/O16
P2
P3
P4
P5
P6
P7
P8
P9
AD0
INPUT 1
INPUT 2
INPUT 3
INPUT 4
INPUT 5
P10
P11
I2C is a trademark of Philips Corp.
Purchase of I2C components from Maxim Integrated Products,
Inc., or one of its sublicensed Associated Companies, conveys a
license under the Philips I2C Patent Rights to use these components in an I2C system, provided that the system conforms to the
I2C Standard Specification as defined by Philips.
PKG
CODE
Typical Application Circuit
Applications
Pin Configurations continued at end of data sheet.
PINPACKAGE
MAX7314ATG
The MAX7314 is controlled through a 2-wire serial interface, and uses four-level logic to allow four I 2 C
addresses from only one select pin.
LCD Backlights
LED Status Indication
Relay Drivers
Keypad Backlights
RGB LED Drivers
System I/O Ports
TEMP RANGE
P12
P13
P14
GND
3.3V
5V
P15
OUTPUT
OUTPUT
________________________________________________________________ Maxim Integrated Products
For pricing, delivery, and ordering information, please contact Maxim/Dallas Direct! at
1-888-629-4642, or visit Maxim’s website at www.maxim-ic.com.
1
MAX7314
General Description
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
ABSOLUTE MAXIMUM RATINGS
Voltage (with respect to GND)
V+ .............................................................................-0.3V to +4V
SCL, SDA, AD0, BLINK, RST, 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 (TA = +70°C)
24-Pin QSOP (derate 9.5mW/°C over +70°C)..............761mW
24-Pin QFN (derate 20.8mW/°C over +70°C) ............1666mW
Operating Temperature Range
(TMIN to TMAX) .............................................-40°C to +125°C
Junction Temperature ......................................................+150°C
Storage Temperature Range .............................-65°C to +150°C
Lead Temperature (soldering, 10s) .................................+300°C
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.
ELECTRICAL CHARACTERISTICS
(Typical Operating Circuit, V+ = 2V to 3.6V, TA = TMIN to TMAX, unless otherwise noted. Typical values are at V+ = 3.3V, TA = +25°C.)
(Note 1)
PARAMETER
Operating Supply Voltage
Output Load External Supply
Voltage
Standby Current
(Interface Idle, PWM Disabled)
Supply Current
(Interface Idle, PWM Enabled)
Supply Current
(Interface Running, PWM
Disabled)
Supply Current
(Interface Running, PWM
Enabled)
SYMBOL
MAX
UNITS
V+
2
3.6
V
VEXT
0
5.5
V
I+
I+
I+
I+
Input High Voltage
SDA, SCL, AD0, BLINK, P0–P15
VIH
Input Low Voltage
SDA, SCL, AD0, BLINK, P0–P15
VIL
Input Leakage Current
SDA, SCL, AD0, BLINK, P0–P15
IIH, IIL
Input Capacitance
SDA, SCL, AD0, BLINK, P0–P15
2
CONDITIONS
SCL and SDA at V+; other
digital inputs at V+ or GND;
PWM intensity control disabled
TA = +25°C
SCL and SDA at V+; other
digital inputs at V+ or GND;
PWM intensity control disabled
TA = +25°C
fSCL = 400kHz; other digital
inputs at V+ or GND; PWM
intensity control enabled
TA = +25°C
fSCL = 400kHz; other digital
inputs at V+ or GND; PWM
intensity control enabled
MIN
TYP
1.2
TA = -40°C to +85°C
2.3
2.8
TA = TMIN to TMAX
3.6
8.5
TA = -40°C to +85°C
15.1
16.5
TA = TMIN to TMAX
µA
17.2
50
95.3
TA = -40°C to +85°C
99.2
TA = TMIN to TMAX
102.4
TA = +25°C
57
µA
110.2
TA = -40°C to +85°C
117.4
TA = TMIN to TMAX
122.1
0.7 x
V+
0 ≤ input voltage ≤ 5.5V
µA
µA
V
-0.2
8
_______________________________________________________________________________________
0.3 x
V+
V
+0.2
µA
pF
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
(Typical Operating Circuit, V+ = 2V to 3.6V, TA = TMIN to TMAX, unless otherwise noted. Typical values are at V+ = 3.3V, TA= + 25°C.)
(Note 1)
PARAMETER
SYMBOL
CONDITIONS
MIN
TA = +25°C
V+ = 2V, ISINK = 20mA
TYP
MAX
0.15
0.26
TA = -40°C to +85°C
0.3
TA = TMIN to TMAX
VOL
V+ = 2.5V, ISINK = 20mA
0.13
Output Low-Voltage SDA
PWM Clock Frequency
VOLSDA
0.23
TA = -40°C to +85°C
0.26
TA = TMIN to TMAX
0.28
TA = +25°C
V+ = 3.3V, ISINK = 20mA
V
0.32
TA = +25°C
Output Low Voltage
P0–P15, INT/O16
UNITS
0.12
0.23
TA = -40°C to +85°C
0.24
TA = TMIN to TMAX
0.26
ISINK = 6mA
0.4
fPWM
V
32
V
V
kHz
TIMING CHARACTERISTICS
(Typical Operating Circuit, V+ = 2V to 3.6V, TA = TMIN to TMAX, unless otherwise noted. Typical values are at V+ = 3.3V, TA = +25°C.)
(Note 1)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
400
kHz
Serial Clock Frequency
fSCL
Bus Free Time Between a STOP and a START
Condition
tBUF
1.3
µs
Hold Time, Repeated START Condition
tHD, STA
0.6
µs
Repeated START Condition Setup Time
tSU, STA
0.6
µs
STOP Condition Setup Time
tSU, STO
Data Hold Time
tHD, DAT
0.6
µs
Data Setup Time
tSU, DAT
180
ns
SCL Clock Low Period
tLOW
1.3
µs
SCL Clock High Period
tHIGH
0.7
µs
(Note 2)
0.9
µs
Rise Time of Both SDA and SCL Signals, Receiving
tR
(Notes 3, 4)
20 +
0.1Cb
300
ns
Fall Time of Both SDA and SCL Signals, Receiving
tF
(Notes 3, 4)
20 +
0.1Cb
300
ns
tF.TX
(Notes 3, 5)
20 +
0.1Cb
250
ns
Fall Time of SDA Transmitting
Pulse Width of Spike Suppressed
tSP
(Note 6)
Capacitive Load for Each Bus Line
Cb
(Note 3)
RST Pulse Width
tW
50
ns
400
1
pF
µs
_______________________________________________________________________________________
3
MAX7314
ELECTRICAL CHARACTERISTICS (continued)
TIMING CHARACTERISTICS (continued)
(Typical Operating Circuit, V+ = 2V to 3.6V, TA = TMIN to TMAX, unless otherwise noted. Typical values are at V+ = 3.3V, TA = +25°C.)
(Note 1)
PARAMETER
SYMBOL
MAX
UNITS
tIV
Figure 10
6.5
µs
Interrupt Reset
tIR
Figure 10
1
µs
Output Data Valid
tDV
Figure 10
5
µs
Input Data Set-Up Time
tDS
Figure 10
100
ns
Input Data Hold Time
tDH
Figure 10
1
µs
Interrupt Valid
CONDITIONS
MIN
TYP
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 VIL of the SCL signal) to bridge
the undefined region of SCL’s falling edge.
Note 3: Guaranteed by design.
Note 4: Cb = total capacitance of one bus line in pF. tR and tF measured between 0.3 x VDD and 0.7 x VDD.
Note 5: ISINK ≤ 6mA. Cb = total capacitance of one bus line in pF. tR and tF measured between 0.3 x VDD and 0.7 x VDD.
Note 6: Input filters on the SDA and SCL inputs suppress noise spikes less than 50ns.
__________________________________________Typical Operating Characteristics
(TA = +25°C, unless otherwise noted.)
7
6
5
4
3
2
V+ = 2V
PWM ENABLED
V+ = 2.7V
V+ = 3.6V
PWM ENABLED
PWM
V+ = 2V
V+ = 2.7V
PWM DISABLED PWM DISABLED DISABLED
50
V+ = 3.6V
40
V+ = 2.7V
30
20
V+ = 2V
10
1
0
0
4
60
SUPPLY CURRENT (µA)
8
70
MAX7314 toc02
V+ = 3.6V
PWM ENABLED
SUPPLY CURRENT (µA)
9
MAX7314 toc01
10
SUPPLY CURRENT vs. TEMPERATURE
(PWM ENABLED; fSCL = 400kHz)
70
65
60
55
50
45
40
35
30
25
20
15
10
5
0
MAX7314 toc03
SUPPLY CURRENT vs. TEMPERATURE
(PWM DISABLED; fSCL = 400kHz)
STANDBY CURRENT vs. TEMPERATURE
STANDBY CURRENT (µA)
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
V+ = 3.6V
V+ = 2.7V
V+ = 2V
-40 -25 -10 5 20 35 50 65 80 95 110 125
-40 -25 -10 5 20 35 50 65 80 95 110 125
-40 -25 -10 5 20 35 50 65 80 95 110 125
TEMPERATURE (°C)
TEMPERATURE (°C)
TEMPERATURE (°C)
_______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
V+ = 2.7V
V+ = 2V
0.3
V+ = 3.6V
0.1
0.4
0.3
V+ = 2V
0.2
0.1
V+ = 2.7V
MAX7314 toc06
V+ = 3.6V
1.000
0.975
V+ = 2V
V+ = 2.7V
0.950
0.925
V+ = 3.6V
NORMALIZED TO V+ = 3.3V, TA = +25°C
0.900
0
0
1.025
-40 -25 -10 5 20 35 50 65 80 95 110 125
-40 -25 -10 5 20 35 50 65 80 95 110 125
-40 -25 -10 5 20 35 50 65 80 95 110 125
TEMPERATURE (°C)
TEMPERATURE (°C)
TEMPERATURE (°C)
MAX7314 toc08
MAX7314 toc07
MASTER INTENSITY SET TO 1/15
0.35
MASTER INTENSITY SET TO 14/15
OUTPUT 1,
2V/div
OUTPUT 1 INDIVIDUAL INTENSITY
SET TO 1/16
OUTPUT 1 INDIVIDUAL INTENSITY
SET TO 1/16
OUTPUT 1 0.30
2V/div
0.25
V+ = 2V
V+ = 2.7V
0.20
V+ = 3.3V
0.15
V+ = 3.6V
OUTPUT 2
0.10
2V/div
OUTPUT 2,
2V/div
OUTPUT 2 INDIVIDUAL INTENSITY
SET TO 15/16
SINK CURRENT vs. VOL
SCOPE SHOT OF 2 OUTPUT PORTS
SCOPE SHOT OF 2 OUTPUT PORTS
OUTPUT 2 INDIVIDUAL INTENSITY
SET TO 14/15
0.05
ONLY ONE OUTPUT LOADED
0
2ms/div
MAX7314 toc09
0.2
0.5
1.050
VOL (V)
0.4
ALL OUTPUTS LOADED
PWM CLOCK FREQUENCY (kHz)
0.5
0.6
PORT OUTPUT LOW VOLTAGE VOL (V)
MAX7314 toc04
PORT OUTPUT LOW VOLTAGE VOL (V)
0.6
PWM CLOCK FREQUENCY
vs. TEMPERATURE
MAX7314 toc05
PORT OUTPUT LOW VOLTAGE WITH 20mA
LOAD CURRENT vs. TEMPERATURE
PORT OUTPUT LOW VOLTAGE WITH 50mA
LOAD CURRENT vs. TEMPERATURE
2ms/div
0
5
10 15 20 25 30 35 40 45 50
SINK CURRENT (mA)
_______________________________________________________________________________________
5
MAX7314
Typical Operating Characteristics (continued)
(TA = +25°C, unless otherwise noted.)
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
MAX7314
Pin Description
PIN
NAME
FUNCTION
22
INT/O16
Output Port. Open-drain output rated at 7V, 50mA. Configurable as interrupt
output or general-purpose output.
2
23
RST
Reset Input. Active low clears the 2-wire interface and puts the device in the
same condition as power-up reset.
3
24
AD0
Address Input. Sets device slave address. Connect to either GND, V+, SCL,
or SDA to give four logic combinations. See Table 1.
4–11, 13–20
1–8, 10–17
P0–P15
12
9
GND
21
18
BLINK
22
19
SCL
I2C-Compatible Serial Clock Input
23
20
SDA
I2C-Compatible Serial Data I/O
24
21
V+
—
PAD
Exposed Pad
QSOP
QFN
1
Input/Output Ports. P0–P15 are open-drain I/Os rated at 5.5V, 50mA.
Ground. Do not sink more than 350mA into the GND pin.
Input Port Configurable as Blink Control or General-Purpose Input
Positive Supply Voltage. Bypass V+ to GND with a 0.047µF ceramic
capacitor.
Exposed Pad on Package Underside. Connect to GND.
DATA FROM
SHIFT REGISTER
DATA FROM
SHIFT REGISTER
CONFIGURATION
REGISTER
D
Q
FF
WRITE
CONFIGURATION
PULSE
CK
Q
OUTPUT PORT
REGISTER DATA
OUTPUT
PORT
REGISTER
D
Q
FF
WRITE PULSE
CK
Q
I/O PIN
Q2
INPUT PORT
REGISTER
D
Q
GND
INPUT PORT
REGISTER DATA
FF
READ PULSE
CK
Q
TO INT
Figure 1. Simplified Schematic of I/O Ports
Functional Overview
The MAX7314 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.
6
All output ports sink loads up to 50mA connected to
external supplies up to 5.5V, independent of the
MAX7314’s supply voltage. The MAX7314 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 MAX7314. The ports default to inputs on
power-up.
_______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
PWM Intensity Control
The MAX7314 includes an internal oscillator, nominally
32kHz, to generate PWM timing for LED intensity control.
PWM intensity control can be enabled on an output-byoutput basis, allowing the MAX7314 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 MAX7314 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).
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 hardware control (the BLINK input)
and/or software control (the blink flip flag in the configuration register) (Table 4). The logic level of the BLINK
input can be read back through the blink status bit in
the configuration register (Table 4). The BLINK input,
therefore, can be used as a general-purpose logic input
(GPI port) if the blink function is not required.
Standby Mode
When the serial interface is idle and the PWM intensity
control is unused, the MAX7314 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 MAX7314, like all I2C slaves, has to monitor every
transmission.
SDA
tSU,STA
tSU,DAT
tLOW
tBUF
tHD,STA
tSU,STO
tHD,DAT
tHIGH
SCL
tHD,STA
tR
tF
START CONDITION
REPEATED START CONDITION
STOP
CONDITION
START
CONDITION
Figure 2. 2-Wire Serial Interface Timing Details
_______________________________________________________________________________________
7
MAX7314
Port Inputs and Transition Detection
Input ports registers reflect the incoming logic levels of
the port pins, regardless of whether the pin is defined
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 condition. 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.
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
The MAX7314 SDA line operates as both an input and
an open-drain output. A pullup resistor, typically 4.7kΩ,
is required on the SDA. The MAX7314 SCL line operates only as an input. A pullup resistor, typically 4.7kΩ,
is required on SCL if there are multiple masters on the
2-wire 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 MAX7314
7-bit slave address plus R/W bit, a register address
byte, one or more data bytes, and finally a STOP condition (Figure 3).
Serial Interface
Serial Addressing
The MAX7314 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 MAX7314 and generates the SCL clock that
synchronizes the data transfer (Figure 2).
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).
SDA
SCL
S
P
START
CONDITION
STOP
CONDITION
Figure 3. Start and Stop Conditions
Bit Transfer
One data bit is transferred during each clock pulse.
The data on SDA must remain stable while SCL is high
(Figure 4).
SDA
SCL
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 MAX7314, the device generates the acknowledge bit because the MAX7314 is
the recipient. When the MAX7314 is transmitting to the
master, the master generates the acknowledge bit
because the master is the recipient.
DATA LINE STABLE; CHANGE OF DATA
DATA VALID
ALLOWED
Figure 4. Bit Transfer
CLOCK PULSE
FOR ACKNOWLEDGE
START
CONDITION
SCL
1
2
8
9
SDA BY
TRANSMITTER
SDA BY
RECEIVER
Slave Address
The MAX7314 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.
S
Figure 5. Acknowledge
SDA
A6
MSB
1
0
0
A2
0
0
R/W
LSB
SCL
Figure 6. Slave Address
8
_______________________________________________________________________________________
ACK
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
Table 1. MAX7314 Address Map
PIN AD0
Any bytes received after the command byte are data
bytes. The first data byte goes into the internal register
of the MAX7314 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 MAX7314 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.
DEVICE ADDRESS
A6
A5
A4
A3
A2
A1
A0
SCL
1
1
0
0
0
0
0
0
SDA
1
1
0
0
1
0
GND
0
1
0
0
0
0
0
V+
0
1
0
0
1
0
0
COMMAND BYTE IS STORED ON RECEIPT OF
STOP CONDITION
ACKNOWLEDGE FROM MAX7314
S
SLAVE ADDRESS
0
Message Format for Writing the MAX7314
A write to the MAX7314 comprises the transmission of
the MAX7314’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 MAX7314
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 MAX7314 takes no further action
beyond storing the command byte.
D15
D14
D13
A
D12
D11
D10
D9
D8
COMMAND BYTE
R/W
A
P
ACKNOWLEDGE FROM MAX7314
Figure 7. Command Byte Received
ACKNOWLEDGE FROM MAX7314
HOW COMMAND BYTE AND DATA BYTE MAP INTO
MAX7314's REGISTERS
D15 D14 D13 D12 D11 D10
D9
ACKNOWLEDGE FROM MAX7314
D8
D7
D6
D5
D4
D3
D2
D1
D0
ACKNOWLEDGE FROM MAX7314
S
SLAVE ADDRESS
0
A
COMMAND BYTE
A
DATA BYTE
A
P
A
P
1
BYTE
AUTOINCREMENT MEMORY ADDRESS
R/W
Figure 8. Command and Single Data Byte Received
ACKNOWLEDGE FROM MAX7314
HOW COMMAND BYTE AND DATA BYTE MAP INTO
MAX7314's REGISTERS
D15 D14 D13 D12 D11 D10
D9
ACKNOWLEDGE FROM MAX7314
D8
D7
D6
D5
D4
D3
D2
D1
D0
ACKNOWLEDGE FROM MAX7314
S
SLAVE ADDRESS
0
R/W
A
COMMAND BYTE
A
DATA BYTE
N
BYTES
AUTOINCREMENT MEMORY ADDRESS
Figure 9. n Data Bytes Received
_______________________________________________________________________________________
9
MAX7314
The second (A5), third (A4), fourth (A3), sixth (A1), and
last (A0) bits of the MAX7314 slave address are always
1, 0, 0, 0, and 0. Slave address bits A6 and A2 are
selected by the address input AD0. AD0 can be connected to GND, V+, SDA, or SCL. The MAX7314 has four
possible slave addresses (Table 1), and therefore a
maximum of four MAX7314 devices can be controlled
independently from the same interface.
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
WRITE TO OUTPUT PORTS REGISTERS (BLINK PHASE 0 REGISTERS/BLINK PHASE 1 REGISTERS)
SCL
1
2
3
4
5
6
7
8
9
SDA S A6 A5 A4 A3 A2 A1 A0
0
A
SLAVE ADDRESS
COMMAND BYTE
0
0
0
0
0
0
0
1
R/W ACKNOWLEDGE FROM SLAVE
START CONDITION
A MSB
DATA1
ACKNOWLEDGE FROM SLAVE
LSB
A MSB
LSB A
DATA2
ACKNOWLEDGE FROM SLAVE
P7–P0
P
STOP
CONDITION
DATA1 VALID
tDV
P15– P8
DATA2 VALID
tDV
READ FROM INPUT PORTS REGISTERS
SCL
1
2
3
4
5
6
7
8
9
SLAVE ADDRESS
COMMAND BYTE
SDA S A6 A5 A4 A3 A2 A1 A0 1
A MSB
DATA1
LSB A MSB
DATA6
LSB NA P
STOP CONDITION
DATA1
P7–P0
ACKNOWLEDGE FROM MASTER
R/W ACKNOWLEDGE FROM SLAVE
START CONDITION
DATA2
tDH
DATA3
DATA4
DATA5
P15–P8
NO ACKNOWLEDGE FROM
MASTER
DATA6
tDS
INTERRUPT VALID/RESET
SCL
1
2
3
4
5
6
7
8
9
SLAVE ADDRESS
COMMAND BYTE
SDA S A6 A5 A4 A3 A2 A1 A0 1
A MSB
DATA2
LSB A MSB
DATA4
LSB NA P
STOP CONDITION
START CONDITION
P7–P0
R/W ACKNOWLEDGE FROM SLAVE
DATA1
ACKNOWLEDGE FROM MASTER
NO ACKNOWLEDGE FROM
MASTER
DATA2
P15–P8
DATA3
DATA4
INT
tIV
tIR tIV
tIR
Figure 10. Read, Write, and Interrupt Timing Diagrams
Message Format for Reading
The MAX7314 is read using the MAX7314’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 MAX7314’s command byte by performing a
write (Figure 7). The master can now read n consecutive bytes from the MAX7314 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.
10
Operation with Multiple Masters
If the MAX7314 is operated on a 2-wire interface with
multiple masters, a master reading the MAX7314 should
use a repeated start between the write, which sets the
MAX7314’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 MAX7314’s address pointer but before
master 1 has read the data. If master 2 subsequently
changes the MAX7314’s address pointer, then master
1’s delayed read can be from an unexpected location.
Command Address Autoincrementing
The command address stored in the MAX7314 circulates around grouped register functions after each data
byte is written or read (Table 2).
______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
MAX7314
Table 2. Register Address Map
ADDRESS CODE
(hex)
REGISTER
AUTOINCREMENT
ADDRESS
Read input ports P7–P0
0x00
0x01
Read input ports P15–P8
0x01
0x00
Blink phase 0 outputs P7–P0
0x02
0x03
Blink phase 0 outputs P15–P8
0x03
0x02
Ports configuration P7–P0
0x06
0x07
Ports configuration P15–P8
0x07
0x06
Blink phase 1 outputs P7–P0
0x0A
0x0B
Blink phase 1 outputs P15–P8
0x0B
0x0A
Master, O16 intensity
0x0E
0x0E (no change)
Configuration
0x0F
0x0F (no change)
Outputs intensity P1, P0
0x10
0x11
Outputs intensity P3, P2
0x11
0x12
Outputs intensity P5, P4
0x12
0x13
Outputs intensity P7, P6
0x13
0x14
Outputs intensity P9, P8
0x14
0x15
Outputs intensity P11, P10
0x15
0x16
Outputs intensity P13, P12
0x16
0x17
Outputs intensity P15, P14
0x17
0x10
Device Reset
Configuration Register
The reset input RST is an active-low input. When taken
low, RST 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 (Table 3),
which resets all ports as inputs. The MAX7314 then
waits for a START condition on the serial interface.
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).
Detailed Description
Initial Power-Up
On power-up, and whenever the RST input is pulled
low, all control registers are reset and the MAX7314
enters standby mode (Table 3). Power-up status makes
all ports into inputs and disables both the PWM oscillator and blink functionality. RST can be used as a hardware shutdown input, which effectively turns off any
LED (or other) loads and puts the device into its lowest
power condition.
Ports Configuration
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, and the BLINK input can be configured as an
extra general-purpose input 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.
______________________________________________________________________________________
11
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
Table 3. Power-Up Configuration
REGISTER FUNCTION
POWER-UP CONDITION
ADDRESS
CODE
(hex)
D7
D6
D5
D4
D3
D2
D1
D0
REGISTER DATA
Blink phase 0 outputs P7–P0
High-impedance outputs
0x02
1
1
1
1
1
1
1
1
Blink phase 0 outputs P15–P8
High-impedance outputs
0x03
1
1
1
1
1
1
1
1
1
Ports configuration P7–P0
Ports P7–P0 are inputs
0x06
1
1
1
1
1
1
1
Ports configuration P15–P8
Ports P15–P8 are inputs
0x07
1
1
1
1
1
1
1
1
Blink phase 1 outputs P7–P0
High-impedance outputs
0x0A
1
1
1
1
1
1
1
1
Blink phase 1 outputs P15–P8
High-impedance outputs
0x0B
1
1
1
1
1
1
1
1
Master, O16 intensity
PWM oscillator is disabled;
O16 is static logic output
0x0E
0
0
0
0
1
1
1
1
Configuration
INT/O16 is interrupt output;
blink is disabled;
global intensity is enabled
0x0F
0
0
0
0
1
1
0
0
1
Outputs intensity P1, P0
P1, P0 are static logic outputs
0x10
1
1
1
1
1
1
1
Outputs Intensity P3, P2
P3, P2 are static logic outputs
0x11
1
1
1
1
1
1
1
1
Outputs intensity P5, P4
P5, P4 are static logic outputs
0x12
1
1
1
1
1
1
1
1
Outputs intensity P7, P6
P7, P6 are static logic outputs
0x13
1
1
1
1
1
1
1
1
Outputs intensity P9, P8
P9, P8 are static logic outputs
0x14
1
1
1
1
1
1
1
1
Outputs intensity P11, P10
P11, P10 are static logic outputs
0x15
1
1
1
1
1
1
1
1
Outputs intensity P13, P12
P13, P12 are static logic outputs
0x16
1
1
1
1
1
1
1
1
Outputs intensity P15, P14
P15, P14 are static logic outputs
0x17
1
1
1
1
1
1
1
1
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 is sampled immediately
after power-up as part of the MAX7314’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.
12
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 generalpurpose output, the INT/O16 pin has the same blink and
PWM intensity control capabilities as the other ports.
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. The
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).
______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
REGISTER DATA
D1
D0
BLINK
ENABLE
D2
BLINK FLIP
D3
GLOBAL
INTENSITY
D4
INTERRUPT
ENABLE
D5
BLINK
STATUS
D6
INTERRUPT
STATUS
D7
INT
BLINK
O1
O0
I
G
B
E
—
X
X
X
X
X
X
X
0
—
X
X
X
X
X
X
X
1
—
X
X
X
X
X
X
0
1
—
X
X
X
X
X
X
1
1
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
—
X
X
X
X
X
0
X
X
Enable global intensity control—intensity
for all ports configured as outputs is set
by D3–D0 of register 0x0E
—
X
X
X
X
X
1
X
X
Disable data change interrupt—INT/O16
output is controlled by the O0 and O1 bits
—
X
X
X
X
0
X
X
X
Enable data change interrupt—INT/O16
output is controlled by port input data
change
—
X
X
X
X
1
X
X
X
INT/O16 output is low (blink is disabled)
—
X
X
X
0
0
X
X
0
INT/O16 output is high impedance (blink
is disabled)
—
X
X
X
1
0
X
X
0
INT/O16 output is low during blink phase 0
—
X
X
X
0
0
X
X
1
INT/O16 output is high impedance during
blink phase 0
—
X
X
X
1
0
X
X
1
INT/O16 output is low during blink phase 1
—
X
X
0
X
0
X
X
1
INT/O16 output is high impedance during
blink phase 1
—
X
X
1
X
0
X
X
1
R/W
0x0F
CONFIGURATION
Write device configuration
0
Read back device configuration
1
Disable blink
Enable blink
Flip blink register (see text)
INTERRUPT
OUTPUT
CONTROL
AS GPO
ADDRESS
CODE
(hex)
REGISTER
X = Don’t care.
______________________________________________________________________________________
13
MAX7314
Table 4. Configuration Register
Table 4. Configuration Register (continued)
1
Read back BLINK input pin status—
input is low
1
D3
D2
D1
D0
BLINK
ENABLE
Read back device configuration
D4
BLINK FLIP
0
D5
GLOBAL
INTENSITY
Write device configuration
D6
INTERRUPT
ENABLE
CONFIGURATION
D7
INTERRUPT
OUTPUT
CONTROL
AS GPO
R/W
REGISTER DATA
BLINK
STATUS
ADDRESS
CODE
(hex)
REGISTER
INTERRUPT
STATUS
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
INT
BLINK
O1
O0
I
G
B
E
X
0
X
X
X
X
X
X
0x0F
Read back BLINK input pin status—
input is high
1
X
1
X
X
X
X
X
X
Read back data change interrupt status
—data change is not detected, and
INT/O16 output is high when interrupt
enable (I bit) is set
1
0
X
X
X
X
X
X
X
Read back data change interrupt status
—data change is detected, and INT/O16
output is low when interrupt enable (I bit) is set
1
1
X
X
X
X
X
X
X
X = Don’t care.
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 both hardware (the
BLINK input) and software control (the blink flip flag B
in the configuration register) (Table 4).
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 programmed 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 states of the blink flip flag and the BLINK
input are EXOR’ed to set the phase, and the output ports
are set by either the blink phase 0 registers or the blink
phase 1 registers (Figure 11) (Table 7).
14
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.
Blink Phase Registers
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.
BLINK ENABLE FLAG E
BLINK FLIP FLAG B
BLINK INPUT
Figure 11. Blink Logic
______________________________________________________________________________________
BLINK PHASE REGISTERS
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
REGISTER
R/W
Ports configuration P7–P0
(1 = input, 0 = output)
0
Read back ports configuration P7–P0
1
Ports configuration P15–P8
(1 = input, 0 = output)
0
Read back ports configuration P15–P8
1
ADDRESS
CODE
(hex)
REGISTER DATA
D7
D6
D5
D4
D3
D2
D1
D0
0x06
OP7
OP6
OP5
OP4
OP3
OP2
OP1
OP0
0x07
OP15
OP14
OP13
OP12
OP11
OP10
OP9
OP8
Table 6. Input Ports Registers
REGISTER
R/W
ADDRESS
CODE
(hex)
D7
D6
D5
D4
D3
D2
D1
D0
Read input ports P7–P0
1
0x00
IP7
IP6
IP5
IP4
IP3
IP2
IP1
IP0
Read input ports P15–P8
1
0x01
IP15
IP14
IP13
IP12
IP11
IP10
IP9
IP8
REGISTER DATA
Table 7. Blink Logic
BLINK ENABLE
FLAG E
BLINK FLIP
FLAG B
BLINK INPUT
PIN
BLINK FLIP FLAG
EXOR
BLINK INPUT PIN
BLINK FUNCTION
0
X
X
X
Disabled
0
0
0
0
1
1
1
0
1
1
1
0
1
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 MAX7314 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 MAX7314 operating
current is lowest because the internal PWM oscillator is
turned off.
OUTPUT REGISTERS USED
Blink phase 0 registers
Blink phase 0 registers
Enabled
Blink phase 1 registers
Blink phase 1 registers
Blink phase 0 registers
The MAX7314 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 MAX7314
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 12).
The master intensity operates as a gate, allowing the individual output settings to be enabled from 1 to 15 timeslots
per PWM period (Figures 13, 14, 15) (Table 13).
______________________________________________________________________________________
15
MAX7314
Table 5. Ports Configuration Registers
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
Table 8. Blink Phase 0 Registers
REGISTER
R/W
Write outputs P7–P0 phase 0
0
Read back outputs P7–P0 phase 0
1
Write outputs P15–P8 phase 0
0
Read back outputs P15–P8 phase 0
1
ADDRESS
CODE
(hex)
REGISTER DATA
D7
D6
D5
D4
D3
D2
D1
D0
0x02
OP7
OP6
OP5
OP4
OP3
OP2
OP1
OP0
0x03
OP15
OP14
OP13
OP12
OP11
OP10
OP9
OP8
Table 9. Blink Phase 1 Registers
REGISTER
R/W
Write outputs P7–P0 phase 1
0
Read back outputs P7–P0 phase 1
1
Write outputs P15–P8 phase 1
0
Read back outputs P15–P8 phase 1
1
ADDRESS
CODE
(hex)
D7
D6
D5
D4
D3
D2
D1
D0
0x0A
OP7
OP6
OP5
OP4
OP3
OP2
OP1
OP0
0x0B
OP15
OP14
OP13
OP12
OP11
OP10
OP9
OP8
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 16, 17, and 18 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.
Using PWM Intensity Controls with Blink Disabled
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 zero 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.
16
REGISTER DATA
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 zero 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).
______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
MAX7314
Table 10. PWM Application Scenarios
APPLICATION
RECOMMENDED CONFIGURATION
All outputs static without PWM
Set the master, O16 intensity register 0x0E to any value 0x00 to 0xOF.
The global intensity G bit in the configuration register is don't care.
The output intensity registers 0x10 through 0x17 are don't care.
A mix of static and PWM outputs, with PWM
outputs using different PWM settings
Set the master and global intensity register 0x0E to any value from 0x10 to 0xFF.
Clear global intensity G bit to zero 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 0x0 to 0xE range.
A mix of static and PWM outputs, with PWM
outputs all using the same PWM setting
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.
All outputs PWM using the same PWM
setting
Set the master, O16 intensity register 0x0E to any value 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.
ONE PWM PERIOD IS 240 CYCLES OF THE 32kHz PWM
OSCILLATOR. A PWM PERIOD CONTAINS 15 MASTER
INTENSITY TIMESLOTS
14
15
1
15 16 1
2
2
3
3
4
4
5
6
7
5
8
6
7
8
9 10 11 12 13 14 15 16
9
1
10
11
12
13
14
15
1
2
2
EACH MASTER INTENSITY
TIMESLOT CONTAINS 16
PWM CYCLES
Figure 12. PWM Timing
.
14
15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
2
14
15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
.
2
.
Figure 13. Master Set to 1/15
Figure 15. Master Set to 15/15
.
14 15 1
2
3
4
5
6
7
8
9 10 11 12 13 14
15 1
2
.
Figure 14. Master Set to 14/15
______________________________________________________________________________________
17
MASTER INTENSITY TIMESLOT
1
2
3
4
5
6
7
8
NEXT MASTER INTENSITY TIMESLOT
9 10 11 12 13 14 15 16
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16
Figure 16. Individual (or Global) Set to 1/16
MASTER INTENSITY TIMESLOT
1
2
3
4
5
6
7
8
NEXT MASTER INTENSITY TIMESLOT
9 10 11 12 13 14 15 16
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16
7
8
9 10 11 12 13 14 15 16
Figure 17. Individual (or Global) Set to 15/16
MASTER INTENSITY TIMESLOT CONTROL IS IGNORED
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16
1
2
3
4
5
6
Figure 18. Individual (or Global) Set to 16/16
Table 11. PWM Intensity Settings (Blink Disabled)
18
PWM DUTY CYCLE
OUTPUT BLINK PHASE 0
REGISTER BIT = 0
LOW TIME
HIGH TIME
0x0
1/16
15/16
0x1
2/16
14/16
0x2
3/16
0x3
0x4
LED BEHAVIOR WHEN
OUTPUT BLINK PHASE 0
REGISTER BIT = 0
(LED IS ON WHEN
OUTPUT IS LOW)
PWM DUTY CYCLE
OUTPUT BLINK PHASE 0
REGISTER = 1
LOW TIME
HIGH TIME
15/16
1/16
14/16
2/16
13/16
13/16
3/16
4/16
12/16
12/16
4/16
5/16
11/16
11/16
5/16
0x5
6/16
10/16
10/16
6/16
0x6
7/16
9/16
9/16
7/16
0x7
8/16
8/16
8/16
8/16
0x8
9/16
7/16
7/16
9/16
6/16
10/16
5/16
11/16
4/16
12/16
0x9
10/16
6/16
0xA
11/16
5/16
0xB
12/16
4/16
Lowest PWM intensity
LED BEHAVIOR WHEN
OUTPUT BLINK PHASE 0
REGISTER BIT = 1
(LED IS ON WHEN
OUTPUT IS LOW)
Highest PWM intensity
Increasing PWM intensity OUTPUT
(OR
GLOBAL)
INTENSITY
SETTING
Increasing PWM intensity
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
0xC
13/16
3/16
3/16
13/16
0xD
14/16
2/16
2/16
14/16
0xE
15/16
1/16
Highest PWM intensity
1/16
15/16
Lowest PWM intensity
0xF
Static low
Static low
Full intensity, no PWM
(LED on continuously)
Static high
impedance
Static high
impedance
LED off continuously
______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
MAX7314
Table 12. PWM Intensity Settings (Blink Enabled)
OUTPUT
(OR
GLOBAL)
INTENSITY
SETTING
PWM DUTY CYCLE
OUTPUT BLINK
PHASE X
REGISTER BIT = 0
PWM DUTY CYCLE
OUTPUT BLINK
PHASE X
REGISTER = 1
LOW
TIME
HIGH
TIME
LOW
TIME
HIGH
TIME
0x0
1/16
15/16
15/16
1/16
0x1
2/16
14/16
14/16
2/16
0x2
3/16
13/16
13/16
3/16
0x3
4/16
12/16
12/16
4/16
0x4
5/16
11/16
11/16
5/16
0x5
6/16
10/16
10/16
6/16
0x6
7/16
9/16
9/16
7/16
0x7
8/16
8/16
8/16
8/16
0x8
9/16
7/16
7/16
9/16
0x9
10/16
6/16
6/16
10/16
0xA
11/16
5/16
5/16
11/16
0xB
12/16
4/16
4/16
12/16
0xC
13/16
3/16
3/16
13/16
0xD
14/16
2/16
2/16
14/16
0xE
15/16
1/16
1/16
15/16
0xF
Static low
Static low
Static high Static high
impedance impedance
Applications Information
Hot Insertion
I/O ports P0–P15, interrupt output INT/O16, RST input,
BLINK input, and serial interface SDA, SCL, AD0 remain
high impedance with up to 6V asserted on them when
the MAX7314 is powered down (V+ = 0V). The MAX7314
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 MAX7314 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.
EXAMPLES OF LED BLINK BEHAVIOR
(LED IS ON WHEN OUTPUT IS LOW)
BLINK PHASE 0
REGISTER BIT = 0
BLINK PHASE 0
REGISTER BIT = 1
BLINK PHASE 1
REGISTER BIT = 1
BLINK PHASE 1
REGISTER BIT = 0
Phase 0: LED on at low intensity
Phase 1: LED on at high intensity
Phase 0: LED on at high intensity
Phase 1: LED on at low intensity
Output is half intensity during both blink phases
Phase 0: LED on at high intensity
Phase 1: LED on at low intensity
Phase 0: LED on at low intensity
Phase 1: LED on at high intensity
Phase 0: LED on continuously
Phase 1: LED off continuously
Phase 0: LED off continuously
Phase 1: LED on continuously
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:
RLED = (VSUPPLY - VLED - VOL) / ILED
where:
RLED is the resistance of the resistor in series with the
LED (Ω).
VSUPPLY is the supply voltage used to drive the LED (V).
VLED is the forward voltage of the LED (V).
VOL is the output low voltage of the MAX7314 when
sinking ILED (V).
ILED is the desired operating current of the LED (A).
For example, to operate a 2.2V red LED at 14mA from a
5V supply, RLED = (5 - 2.2 - 0.25) / 0.014 = 182Ω.
______________________________________________________________________________________
19
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
Table 13. Master, O16 Intensity Register
REGISTER
R/W
ADDRESS
CODE
(hex)
REGISTER DATA
D7
D6
D5
MSB
MASTER AND GLOBAL INTENSITY
D4
D3
LSB
MSB
MASTER INTENSITY
Write master and global intensity
0
Read back master and global intensity
1
Master intensity duty cycle is 0/15 (off);
internal oscillator is disabled;
all outputs will be static with no PWM
D2
D1
D0
LSB
O16 INTENSITY
M3
M2
M1
M0
G3
G2
G1
G0
—
0
0
0
0
—
—
—
—
Master intensity duty cycle is 1/15
—
0
0
0
1
—
—
—
—
Master intensity duty cycle is 2/15
—
0
0
1
0
—
—
—
—
Master intensity duty cycle is 3/15
—
0
0
1
1
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
0X0E
Master intensity duty cycle is 13/15
—
1
1
0
1
—
—
—
Master intensity duty cycle is 14/15
—
1
1
1
0
—
—
—
—
Master intensity duty cycle is 15/15 (full)
—
1
1
1
1
—
—
—
—
O16 intensity duty cycle is 1/16
—
—
—
—
—
0
0
0
0
O16 intensity duty cycle is 2/16
—
—
—
—
—
0
0
0
1
20
O16 intensity duty cycle is 3/16
—
—
—
—
—
0
0
1
0
—
—
—
—
—
—
—
—
—
—
O16 intensity duty cycle is 14/16
—
—
—
—
—
1
1
0
1
O16 intensity duty cycle is 15/16
—
—
—
—
—
1
1
1
0
O16 intensity duty cycle is 16/16
(static output, no PWM)
—
—
—
—
—
1
1
1
1
______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
REGISTER
ADDRESS
CODE
(hex)
R/W
REGISTER DATA
D7
D6
D5
MSB
OUTPUTS P1, P0 INTENSITY
D4
D3
LSB
MSB
OUTPUT P1 INTENSITY
Write output P1, P0 intensity
0
Read back output P1, P0 intensity
1
Output P1 intensity duty cycle is 1/16
Output P1 intensity duty cycle is 2/16
Output P1 intensity duty cycle is 3/16
—
0
0
—
—
—
—
Output P1 intensity duty cycle is 14/16
—
1
1
Output P1 intensity duty cycle is 15/16
—
1
1
1
D2
D1
D0
LSB
OUTPUT P0 INTENSITY
P1I3
P1I2
P1I1
P1I0
P0I3
P0I2
P0I1
P0I0
—
0
0
0
0
—
—
—
—
—
0
0
0
1
—
—
—
—
1
0
—
—
—
—
—
—
—
—
—
—
0
1
—
—
—
—
1
0
—
—
—
—
1
1
1
—
—
—
—
0X10
Output P1 intensity duty cycle is 16/16
(static logic level, no PWM)
—
Output P0 intensity duty cycle is 1/16
—
—
—
—
—
0
0
0
0
Output P0 intensity duty cycle is 2/16
—
—
—
—
—
0
0
0
1
Output P0 intensity duty cycle is 3/16
—
—
—
—
—
0
0
1
0
—
—
—
—
—
—
—
—
—
—
Output P0 intensity duty cycle is 14/16
—
—
—
—
—
1
1
0
1
Output P0 intensity duty cycle is 15/16
—
—
—
—
—
1
1
1
0
Output P0 intensity duty cycle is 16/16
(static logic level, no PWM)
—
—
—
—
—
1
1
1
1
LSB
MSB
MSB
OUTPUTS P3, P2 INTENSITY
Write output P3, P2 intensity
0
Read back output P3, P2 intensity
1
0x11
OUTPUT P3 INTENSITY
P3I3
P3I2
P3I1
MSB
OUTPUTS P5, P4 INTENSITY
Write output P5, P4 intensity
0
Read back output P5, P4 intensity
1
0x12
P5I3
P5I2
P5I1
MSB
OUTPUTS P7, P6 INTENSITY
Write output P7, P6 intensity
0
Read back output P7, P6 intensity
1
0x13
P2I3
LSB
MSB
P7I2
P7I1
P4I3
LSB
MSB
P7I0
P2I2
P2I1
P2I0
LSB
OUTPUT P4 INTENSITY
P5I0
OUTPUT P7 INTENSITY
P7I3
OUTPUT P2 INTENSITY
P3I0
OUTPUT P5 INTENSITY
LSB
P4I2
P4I1
P4I0
LSB
OUTPUT P6 INTENSITY
P6I3
P6I2
P6I1
P6I0
______________________________________________________________________________________________________
21
MAX7314
Table 14. Output Intensity Registers
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
Table 14. Output Intensity Registers (continued)
REGISTER
R/W
ADDRESS
CODE
(hex)
D7
D6
D5
MSB
OUTPUTS P9, P8 INTENSITY
Write output P9, P8 intensity
0
Read back output P9, P8 intensity
1
0x14
P9I2
P9I1
MSB
Write output P11, P10 intensity
0
Read back output P11, P10 intensity
1
0x15
P11I2
P11I1
MSB
Write output P13, P12 intensity
0
Read back output P13, P12 intensity
1
0x16
P13I2
P13I1
MSB
Write output P15, P14 intensity
0
Read back output P15, P14 intensity
1
0x17
OUTPUT O16 INTENSITY
Driving Load Currents Higher than 50mA
The MAX7314 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.
P8I3
LSB
MSB
P15I3
P15I2
P15I1
P10I3
LSB
MSB
D0
LSB
P8I2
P8I1
P8I0
LSB
P10I2
P10I1
P10I0
LSB
OUTPUT P12 INTENSITY
P13I0
P12I3
LSB
MSB
P15I0
D1
OUTPUT P10 INTENSITY
P11I0
OUTPUT P15 INTENSITY
D2
OUTPUT P8 INTENSITY
P9I0
OUTPUT P13 INTENSITY
P13I3
OUTPUTS P15, P14 INTENSITY
D3
MSB
OUTPUT P11 INTENSITY
P11I3
OUTPUTS P13, P12 INTENSITY
D4
LSB
OUTPUT P9 INTENSITY
P9I3
OUTPUTS P11, P10 INTENSITY
22
REGISTER DATA
P12I2
P12I1
P12I0
LSB
OUTPUT P14 INTENSITY
P14I3
P14I2
P14I1
P14I0
See master, O16 intensity register (Table 13).
The MAX7314 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 19). The
peak current through the diode is the inductive load’s
operating current.
Power-Supply Considerations
The MAX7314 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.
______________________________________________________________________________________
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
TOP VIEW
P11
16
P13
17
P12
P15
18
INT/O16 1
P14
BLINK
TOP VIEW
RST 2
15
14
13
AD0 3
SCL 19
12 P10
P0 4
SDA 20
11 P9
P1 5
V+ 21
10 P8
MAX7314ATG
INT/O16 22
RST 23
4
5
6
P4
P5
P1
3
P3
2
P2
1
P0
AD0 24
24 V+
23 SDA
22 SCL
21 BLINK
MAX7314AEG
20 P15
P2 6
19 P14
9
GND
P3 7
18 P13
8
P7
P4 8
17 P12
7
P6
P5 9
16 P11
P6 10
15 P10
P7 11
14 P9
GND 12
13 P8
THIN QFN
QSOP
Chip Information
TRANSISTOR COUNT: 25,991
PROCESS: BiCMOS
2V TO 3.6V
5V
0.047µF
µC
SDA
SCL
I/O
I/O
INT
V+
P0
P1
SDA MAX7314
SCL
BLINK
RST
INT/O16
P2
BAS16
P3
P4
P5
P6
P7
P8
P9
AD0
P10
P11
P12
P13
P14
GND
P15
Figure 19. Diode-Protected Switching Inductive Load
______________________________________________________________________________________
23
MAX7314
Pin Configurations
Package Information
(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
MAX7314
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
PACKAGE OUTLINE, QSOP .150", .025" LEAD PITCH
21-0055
24
______________________________________________________________________________________
E
1
1
18-Port GPIO with LED Intensity Control,
Interrupt, and Hot-Insertion Protection
24L QFN THIN.EPS
PACKAGE OUTLINE,
12, 16, 20, 24, 28L THIN QFN, 4x4x0.8mm
21-0139
D
1
2
PACKAGE OUTLINE,
12, 16, 20, 24, 28L THIN QFN, 4x4x0.8mm
21-0139
D
2
2
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 ____________________ 25
© 2005 Maxim Integrated Products
Printed USA
is a registered trademark of Maxim Integrated Products, Inc.
MAX7314
Package Information (continued)
(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.)