The MCP23016-I/SS is a 16-bit parallel I/O Expander for I2C bus applications. This device includes high-current drive capability, low supply current and individual I/O configuration. The I/O expander provides a simple solution when additional I/Os are needed for ACPI, power switches, sensors, push buttons, LEDs and so on. The MCP23016 consists of multiple 8-bit configuration registers for input, output and polarity selection. The system master can enable the I/Os as either inputs or outputs by writing the I/O configuration bits. The data for each input or output is kept in the corresponding input or output register. The open-drain interrupt output is activated when any input state differs from its corresponding input port register state. This is used to indicate to the system master that an input state has changed. The interrupt capture register captures port value at this time. The power-on reset sets the registers to their default values and initializes the device state machine.
Three hardware address pins allow use of up to eight devices
Open-drain interrupt output on input change
Interrupt port capture register
Internal power-ON Reset (POR)
Polarity inversion register to configure the polarity of the input port data