Serial interface – Rainbow Electronics MAX7315 User Manual
Page 7
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 the 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/O8 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 input ports reg-
ister is read.
The INT/O8 pin can be configured as either an interrupt
output or as a 9th output port with the same static or
blink controls as the other eight ports (Table 4).
Port Output Control and LED Blinking
The blink phase 0 register sets the output logic levels of
the eight ports P0–P7 (Table 8). This register controls
the port outputs if the blink function is disabled. A
duplicate register, the blink phase 1 register, is 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 register and the blink phase 1 regis-
ter using software control (the blink flip flag in the con-
figuration register) (Table 4).
PWM Intensity Control
The MAX7315 includes an internal oscillator, nominally
32kHz, to generate PWM timing for LED intensity con-
trol. PWM intensity control can be enabled on an out-
put-by-output basis, allowing the MAX7315 to provide
any mix of PWM LED drives and glitch-free logic out-
puts (Table 10). PWM can be disabled entirely, in
which case all output ports are static and the MAX7315
operating current is lowest because the internal oscilla-
tor 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 intensi-
ty 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 con-
trol 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 MAX7315 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 MAX7315, like all I
2
C slaves, has to monitor every
transmission.
Serial Interface
Serial Addressing
The MAX7315 operates as a slave that sends and
receives data through an I
2
C-compatible 2-wire inter-
face. The interface uses a serial data line (SDA) and a
serial clock line (SCL) to achieve bidirectional commu-
nication between master(s) and slave(s). A master (typ-
ically a microcontroller) initiates all data transfers to and
from the MAX7315 and generates the SCL clock that
synchronizes the data transfer (Figure 2).
The MAX7315 SDA line operates as both an input and
an open-drain output. A pullup resistor, typically 4.7k
Ω,
is required on SDA. The MAX7315 SCL line operates
MAX7315
8-Port I/O Expander with LED Intensity
Control and Interrupt
_______________________________________________________________________________________
7
Figure 2. 2-Wire Serial Interface Timing Details
SCL
SDA
t
R
t
F
t
BUF
START
CONDITION
STOP
CONDITION
REPEATED START CONDITION
START CONDITION
t
SU,STO
t
HD,STA
t
SU,STA
t
HD,DAT
t
SU,DAT
t
LOW
t
HIGH
t
HD,STA