The MAX7328/MAX7329 are 2-wire serial-interfaced peripherals with eight I/O ports. Any port can be used as a logic input or an open-drain output.
All input ports are continuously monitored for state changes (transition detection). Transitions are alerted through the open-drain, 5.5V-tolerant INT output.
The MAX7328 and MAX7329 versions differ only by their slave ID address ranges. The MAX7328 has a slave ID range of 0100xxx [0x20 to 0x27). The MAX7329 has a slave ID range of 0111xxx (0x38 to 0x3F).
The MAX7328/MAX7329 are general-purpose port expanders operating from a 2.5V to 5.5V supply that provide eight open-drain input/output ports with a 20mA sink capability. The devices are rated to sink up to 100mA at once, from any combination of ports. The port outputs can drive loads connected to any voltage up to the MAX7328/MAX7329’s supply voltage.
The MAX7328 is set to one of eight I2C slave addresses 0x20 to 0x27, and the MAX7329 is set to one of eight I2C slave addresses, 0x38 to 0x3F, using the address inputs AD2, AD1, and AD0. The parts are accessed over an I2C serial interface up to 100kHz.
Any port can be configured as a logic input by setting the port output logic-high. The MAX7328/MAX7329 do not distinguish between a port used as an input and a port used as an output that happens to be high. When a MAX7328 or MAX7329 is read through the serial interface, the actual logic levels at the port pins are read back.
When an I/O port is high, an internal pullup to V+ is active. The pullup is enabled only when the output is high, and is turned off when the output is low to reduce quiescent current. An additional strong pullup to V+ allows fast-rising edges into heavily loaded outputs. These strong pullups turn on when an output is written high, and are switched off by the falling edge of SCL.
The MAX7328/MAX7329 provide an open-drain output (INT). An interrupt is generated by any rising or falling edge of the port inputs in the input mode. After time, tIV, the signal INT is valid.