Remote 16-Bit I2C And SMBus I/O Expander With Interrupt Output And Configuration Registers - PCA9555


Remote 16-Bit I2C And SMBus I/O Expander With Interrupt Output And Configuration Registers


Recommended alternative parts

  • TCA9555  -  The same functionality as the PCA9555, but with performance enhancements for power-on reset, interrupt, and lower voltage operation


This 16-bit I/O expander for the two-line bidirectional bus (I2C) is designed for 2.3-V to 5.5-V VCC operation. It provides general-purpose remote I/O expansion for most microcontroller families via the I2C interface [serial clock (SCL), serial data (SDA)].

The PCA9555 consists of two 8-bit Configuration (input or output selection), Input Port, Output Port, and Polarity Inversion (active high or active low operation) registers. At power on, the I/Os are configured as inputs. The system master can enable the I/Os as either inputs or outputs by writing to the I/O configuration bits. The data for each input or output is kept in the corresponding Input or Output register. The polarity of the Input Port register can be inverted with the Polarity Inversion register. All registers can be read by the system master.

The system master can reset the PCA9555 in the event of a timeout or other improper operation by utilizing the power-on reset feature, which puts the registers in their default state and initializes the I2C/SMBus state machine.

The PCA9555 open-drain interrupt (INT) output is activated when any input state differs from its corresponding Input Port register state and is used to indicate to the system master that an input state has changed.

INT can be connected to the interrupt input of a microcontroller. By sending an interrupt signal on this line, the remote I/O can inform the microcontroller if there is incoming data on its ports without having to communicate via the I2C bus. Thus, the PCA9555 can remain a simple slave device.

The device outputs (latched) have high-current drive capability for directly driving LEDs.

Although pin-to-pin and I2C-address is compatible with the PCF8575, software changes are required due to the enhancements.

The PCA9555 is identical to the PCA9535, except for the inclusion of the internal I/O pullup resistor, which pulls the I/O to a default high when configured as an input and undriven.

Three hardware pins (A0, A1, and A2) are used to program and vary the fixed I2C address and allow up to eight devices to share the same I2C bus or SMBus. The fixed I2C address of the PCA9555 is the same as the PCF8575, PCF8575C, and PCF8574, allowing up to eight of these devices in any combination to share the same I2C bus or SMBus.


  • Low Standby-Current Consumption of 1 μA Max
  • I2C to Parallel Port Expander
  • Open-Drain Active-Low Interrupt Output
  • 5-V Tolerant I/O Ports
  • Compatible With Most Microcontrollers
  • 400-kHz Fast I2C Bus
  • Address by Three Hardware Address Pins for Use of up to Eight Devices
  • Polarity Inversion Register
  • Latched Outputs With High-Current Drive Capability for Directly Driving LEDs
  • Latch-Up Performance Exceeds 100 mA Per JESD 78, Class II
  • ESD Protection Exceeds JESD 22
    • 2000-V Human-Body Model (A114-A)
    • 200-V Machine Model (A115-A)
    • 1000-V Charged-Device Model (C101)

All trademarks are the property of their respective owners.

View more

Parametrics Compare all products in I2C General Purpose I/O (GPIO)

Voltage Nodes (V)
fSCLK (Max) (MHz)
VCC (Min) (V)
Max Frequency (kHz)
VCC (Max) (V)
I2C Address
Number of I/Os
Operating Temperature Range (C)
Package Group
0100 xxx   
-40 to 85   

Featured tools and software