The MAX7300 compact, serial-interfaced, I/O expansion peripheral provides microprocessors with up to 28
ports. Each port is individually user configurable to
either a logic input or logic output.
Each port can be configured as either a push-pull logic
output capable of sinking 10mA and sourcing 4.5mA, or a
Schmitt logic input with optional internal pullup. Seven
ports feature configurable transition detection logic, which
generates an interrupt upon change of port logic level.
The MAX7300 is controlled through an I2C™-compatible
2-wire serial interface, and uses four-level logic to allow
16 I2C addresses from only two select pins.
The MAX7300AAX and MAX7300AGL have 28 ports
and are available in 36-pin SSOP and 40-pin QFN packages, respectively. The MAX7300AAI and MAX7300ANI
have 20 ports and are available in 28-pin SSOP and 28pin DIP packages, respectively.
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 +6V
SCL, SDA, AD0, AD1................................................-0.3V to +6V
All Other Pins................................................-0.3V to (V+ + 0.3V)
P4–P31 Current ................................................................±30mA
GND Current .....................................................................800mA
The MAX7300 general-purpose input/output (GPIO)
peripheral provides up to 28 I/O ports, P4 to P31, controlled through an I2C-compatible serial interface. The
ports can be configured to any combination of logic
inputs and logic outputs, and default to logic inputs on
power-up.
Figure 1 is the MAX7300 functional diagram. Any I/O port
can be configured as a push-pull output (sinking 10mA,
sourcing 4.5mA), or a Schmitt-trigger logic input. Each
input has an individually selectable internal pullup resistor. Additionally, transition detection allows seven ports
(P24 to P30) to be monitored in any maskable combination for changes in their logic status. A detected transition is flagged through a status register bit, as well as an
interrupt pin (port P31), if desired.
The port configuration registers individually set the 28
ports, P4 to P31, as GPIO. A pair of bits in registers
0x09 through 0x0F sets each port’s configuration
(Tables 1 and 2).
The 36-pin MAX7300AAX and 40-pin MAX7300AGL
have 28 ports, P4 to P31. The 28-pin MAX7300ANI and
MAX7300AAI have only 20 ports available, P12 to P31.
The eight unused ports should be configured as outputs on power-up by writing 0x55 to registers 0x09 and
0x0A. If this is not done, the eight unused ports remain
as floating inputs and quiescent supply current rises,
although there is no damage to the part.
Register Control of I/O Ports
Across Multiple Drivers
The MAX7300 offers 20 or 28 I/O ports, depending on
package choice. Two addressing methods are available. Any single port (bit) can be written (set/cleared)
at once; or, any sequence of eight ports can be written
(set/cleared) in any combination at once. There are no
boundaries; it is equally acceptable to write P0 to P7,
P1 to P8, or P31 to P38 (P32 to P38 are nonexistent, so
the instructions to these bits are ignored).
Shutdown
When the MAX7300 is in shutdown mode, all ports are
forced to inputs, and the pullup current sources are
turned off. Data in the port and control registers remain
unaltered, so port configuration and output levels are
restored when the MAX7300 is taken out of shutdown.
The MAX7300 can still be programmed while in shutdown mode. For minimum supply current in shutdown
mode, logic inputs should be at GND or V+ potential.
Shutdown mode is exited by setting the S bit in the configuration register (Table 8).
Pin Description
PIN
SSOP/DIPSSOP
1136ISET
2, 32, 3
4440AD0
QFN
37, 38, 39
NAMEFUNCTION
GNDGround
5–24——P12–P31
—5–32
2533
2634
273534AD1
283635V+
1–10, 12–19,
21–30
32
33
P4–P31
SDAI2C-Compatible Serial Data I/O
SCLI2C-Compatible Serial Clock Input
Bias Current Setting. Connect ISET to GND through a resistor (R
value of 39kΩ to 120kΩ.
Address Input 0. Sets device slave address. Connect to either GND,
V+, SCL, SDA to give four logic combinations. See Table 3.
I/O P or ts. P 12 to P 31 can b e confi g ur ed as p ush- p ul l outp uts, C M O S l og i c i np uts, or C M O S - l og i c i np uts w i th w eak p ul l up r esi stor .
I/O P or ts. P4 to P31 can be configured as p ush- p ul l outputs, CMOSlogic inputs, or CMOS-logic inputs with weak pullup resistor.
Address Input 1. Sets device slave address. Connect to either GND,
V+, SCL, SDA to give four logic combinations. See Table 3.
Positive Supply Voltage. Bypass V+ to GND with minimum 0.047µF
capacitor.
The MAX7300 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 MAX7300, and generates the SCL clock that
synchronizes the data transfer (Figure 2).
The MAX7300 SDA line operates as both an input and
an open-drain output. A pullup resistor, typically 4.7kΩ,
is required on SDA. The MAX7300 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 MAX7300
7-bit slave address plus R/W bit (Figure 6), 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, which 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, such that the SDA line is stable low during the high period of the clock pulse. When
the master is transmitting to the MAX7300, the
MAX7300 generates the acknowledge bit since the
Table 1. Port Configuration Map
Table 2. Port Configuration Matrix
(
)
REGISTER
Port Configuration for P7, P6, P5, P40x09P7P6P5P4
Port Configuration for P11, P10, P9, P80x0AP11P10P9P8
Port Configuration for P15, P14, P13, P120x0BP15P14P13P12
Port Configuration for P19, P18, P17, P160x0CP19P18P17P16
Port Configuration for P23, P22, P21, P200x0DP23P22P21P20
Port Configuration for P27, P26, P25, P240x0EP27P26P25P24
Port Configuration for P31, P30, P29, P280x0FP31P30P29P28
ADDRESS
CODE (HEX)
D7D6D5D4D3D2D1D0
MODEFUNCTION
DO NOT USE THIS SETTING0x09 to 0x0F00
OutputGPIO Output
Input
InputGPIO Input with PullupReading PortSchmitt logic input with pullup0x09 to 0x0F11
GPIO Input
without Pullup
PORT
REGISTER
Written Low
Written High
Reading PortSchmitt logic output0x09 to 0x0F10
Active-low logic output
Active-high logic output
PIN BEHAVIOR
REGISTER DATA
PORT
ADDRESS
CODE
HEX
0x09 to 0x0F01
CONFIGURATION
BIT PAIR
UPPERLOWER
MAX7300
2-Wire-Interfaced, 2.5V to 5.5V, 20-Port or
28-Port I/O Expander
MAX7300 is the recipient. When the MAX7300 is transmitting to the master, the master generates the
acknowledge bit since the master is the recipient.
Slave Address
The MAX7300 has a 7-bit-long slave address (Figure 6).
The eighth bit following the 7-bit slave address is the
R/W bit. It is low for a write command and high for a
read command.
The first 3 bits (MSBs) of the MAX7300 slave address
are always 100. Slave address bits A3, A2, A1, and A0
are selected by the address inputs, AD1 and AD0.
These two input pins can be connected to GND, V+,
SDA, or SCL. The MAX7300 has 16 possible slave
addresses (Table 3), and therefore a maximum of 16
MAX7300 devices can share the same interface.
Message Format for Writing
the MAX7300
A write to the MAX7300 comprises the transmission of
the MAX7300’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 MAX7300
is to be written by the next byte, if received. If a STOP
condition is detected after the command byte is
received, then the MAX7300 takes no further action
(Figure 7) beyond storing the command byte.
Any bytes received after the command byte are considered data bytes. The first data byte goes into the internal register of the MAX7300 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 MAX7300 internal registers because the command byte address generally
autoincrements (Table 4).
Message Format for Reading
The MAX7300 is read using the MAX7300’s internally
stored command byte as address pointer, the same way
the stored command byte is used as address pointer for
a write. The pointer generally autoincrements after each
data byte is read using the same rules as for a write
(Table 4). Thus, a read is initiated by first configuring the
MAX7300’s command byte by performing a write (Figure
7). The master can now read ‘n’ consecutive bytes from
the MAX7300, with the first data byte being read from the
register addressed by the initialized command byte
(Figure 9). When performing read-after-write verification,
remember to reset the command byte’s address
because the stored control byte address generally has
been autoincremented after the write (Table 4). Table 5
is the register address map.
Figure 2. 2-Wire Serial Interface Timing Details
Figure 3. Start and Stop Conditions
Figure 4. Bit Transfer
SDA
t
SU, DAT
t
LOW
SCL
t
t
HD, STA
START CONDITION
HIGH
t
R
t
F
SDA
SCL
S
START
CONDITION
t
HD, DAT
t
SU, STA
REPEATED START CONDITION
t
HD, STA
t
SU, STO
P
STOP
CONDITION
t
BUF
START CONDITIONSTOP CONDITION
SDA
SCL
DATA LINE STABLE; DATA VALID
CHANGE OF DATA ALLOWED
MAX7300
2-Wire-Interfaced, 2.5V to 5.5V, 20-Port or
28-Port I/O Expander
If the MAX7300 is operated on a 2-wire interface with
multiple masters, a master reading the MAX7300 should
use a repeated start between the write, which sets the
MAX7300’s address pointer, and the read(s) that takes
the data from the location(s). This is because it is possible for master 2 to take over the bus after master 1 has
set up the MAX7300’s address pointer, but before
master 1 has read the data. If master 2 subsequently
changes, the MAX7300’s address pointer, then master
1’s delayed read can be from an unexpected location.
Command Address Autoincrementing
Address autoincrementing allows the MAX7300 to be
configured with the shortest number of transmissions
by minimizing the number of times the command
address needs to be sent. The command address
stored in the MAX7300 generally increments after each
data byte is written or read (Table 4).
Initial Power-Up
On initial power-up, all control registers are reset and
the MAX7300 enters shutdown mode (Table 6).
Transition (Port Data Change) Detection
Port transition detection allows seven maskable ports
P24 to P30 to be continuously monitored for changes in
their logic status (Figure 10). Enable transition detection by setting the M bit in the configuration register
(Table 9) after setting the mask register. If port 31 is
configured as an output (Tables 1 and 2), then P31
automatically becomes an interrupt request (IRQ) output to flag detected transitions. Port 31 can be configured and used as a general-purpose input port instead,
if not required for use as the IRQ output.
The mask register determines which of the seven ports
P24 to P30 are monitored (Table 10). Set the appropriate mask bit to enable that port for transition detect.
Clear the mask bit if transitions on that port are to be
ignored by the transition detection logic. Ports are monitored regardless of their I/O configuration, both input
and output.
The MAX7300 maintains an internal 7-bit snapshot register to hold the comparison copy of the logic states of
ports P24 to P30. The snapshot register is updated with
the condition of P24 to P31 whenever the configuration
register is written with the M bit set. The update action
occurs regardless of the previous state of the M bit so
that it is not necessary to clear the M bit and then reset
it in order to update the snapshot register.
When the data change detection bit is set, the MAX7300
continuously compares the snapshot register against
the changing states of P24 to P31. When a difference
occurs, the IRQ bit (mask register bit D7) is set and IRQ
port P31 goes high if it is configured as an output.
The IRQ bit and IRQ output remain set until the mask
register is next read or written, so if the IRQ is set, then
the mask register reads with bit D7 set. Writing the
mask register clears the IRQ bit and resets the IRQ output, regardless of the value of bit D7 written.
External Component R
ISET
The MAX7300 uses an external resistor, R
ISET,
to set
internal biasing. Use a resistor value of 39kΩ.
Applications Information
Low-Voltage Operation
The MAX7300 operates down to 2V supply voltage
(although the sourcing and sinking currents are not
guaranteed), providing that the MAX7300 is powered up
initially to at least 2.5V to trigger the device’s internal
reset.
Power-Supply Considerations
The MAX7300 operates with power-supply voltages of
2.5V to 5.5V. Bypass the power supply to GND with a
0.047µF capacitor as close to the device as possible.
Add a 1µF capacitor if the MAX7300 is far away from
the board’s input bulk decoupling capacitor.
Chip Information
TRANSISTOR COUNT: 33,559
PROCESS: CMOS
Figure 7. Command Byte Received
Figure 8. Command and Single Data Byte Received
COMMAND BYTE IS STORED ON RECEIPT OF STOP CONDITION
ACKNOWLEDGE FROM MAX7300
SAAP0
HOW COMMAND BYTE AND DATA BYTE MAP INTO MAX7300’s REGISTER
SAAAP0
ACKNOWLEDGE FROM MAX7300
SLAVE ADDRESS
SLAVE ADDRESS
R/W
D15 D14 D13 D12 D11 D10 D9 D8D1 D0D3 D2D5 D4D7 D6
R/W
D15 D14 D13 D12 D11 D10 D9 D8
COMMAND BYTE
ACKNOWLEDGE FROM MAX7300
ACKNOWLEDGE FROM MAX7300ACKNOWLEDGE FROM MAX7300
COMMAND BYTE
AUTOINCREMENT MEMORY WORD ADDRESS
DATA BYTE
1 BYTE
MAX7300
2-Wire-Interfaced, 2.5V to 5.5V, 20-Port or
28-Port I/O Expander
(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.)
12
MAX
0.078
0.008
0.015
0.008
0.212
0.311
0.037
8∞
MILLIMETERS
MIN
1.731.99
0.05
0.25
0.09
5.20
7.65
0.63
INCHES
DIM
MIN
A
0.068
A1
0.002
B
0.010
C
HE
N
A
e
D
B
A1
D
E
e
H
L
0.004
SEE VARIATIONS
0.205
0.0256 BSC
0.301
0.025
0∞
L
NOTES:
1. D&E DO NOT INCLUDE MOLD FLASH.
2. MOLD FLASH OR PROTRUSIONS NOT TO EXCEED .15 MM (.006").
3. CONTROLLING DIMENSION: MILLIMETERS.
4. MEETS JEDEC MO150.
5. LEADS TO BE COPLANAR WITHIN 0.10 MM.
0.38
0.20
5.38
0.65 BSC
0.95
0∞
MAX
0.21
7.90
8∞
PROPRIETARY INFORMATION
TITLE:
INCHES
MIN
D
0.239
D
0.239
D
0.278
D
0.317
0.397
D
MILLIMETERS
MAX
0.249
0.249
0.289
0.328
0.407
PACKAGE OUTLINE, SSOP, 5.3 MM
21-0056
MIN
6.07
6.07
7.07
8.07
10.07
MAX
6.33
6.33
7.33
8.33
10.33
SSOP.EPS
N
14L
16L
20L
24L
28L
C
REV.DOCUMENT CONTROL NO.APPROVAL
1
C
1
MAX7300
2-Wire-Interfaced, 2.5V to 5.5V, 20-Port or
28-Port I/O Expander
(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.)
(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.)
U
MAX7300
2-Wire-Interfaced, 2.5V to 5.5V, 20-Port or
28-Port I/O Expander
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.
22 ____________________Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600
(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.)
e
36
1
TOP VIEW
FRONT VIEW
INCHES
MIN
DIM
0.096A
0.004
A1
0.012
B
0.009
C
HE
D
A1
A
B
C
e0.0315 BSC0.80 BSC
0.291
E
H0.4140.39810.11 10.51
0.020L
D0.6120.598
L
MAX
0.104
0.011
0.017
0.013
0.299
0.040
MILLIMETERS
MAX
MIN
2.65
2.44
0.29
0.10
0.44
0.30
0.23
0.32
7.407.60
0.511.02
15.2015.55
0∞-8∞
SSOP.EPS
SIDE VIEW
PROPRIETARY INFORMATION
TITLE:
PACKAGE OUTLINE, 36L SSOP, 0.80 MM PITCH
21-0040E
REV.DOCUMENT CONTROL NO.APPROVAL
1
1
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.