IC MCP23016 I/O Port Expander 16-Bit I2C
Product information:
Add 16 pins to your microcontroller with this MCP23016 port expander. The MCP23016 uses 2 I2C pins (which can be shared with other I2C devices) and in return you get 16 extra multifunctional pins. You can set each pin as an input, output, input with pull-up or open drain. You can even connect an interrupt signal so that your microcontroller gets a signal when one of the pins changes so that you don't have to poll the chip yourself every time.
The chip has an adjustable I2C address (using ADDR0-2 pins). Connect the pins to ground or power and you can set 8 different addresses.
Because the chip operates at 2.7V to 5.5V, you can use it with any setup (e.g. 3.3V or 5V).
This expander can directly control LEDs.
Max. bus frequency: 400 kBits/s