Working With I2C Port Expanders

There are times when you don’t need much processing power for your project but you do need a lot of I/O pins. It often doesn’t make economic sense to choose a larger microcontroller just to get extra pins so the answer is to use a port expander chip. [Raendra] posted a guide for using one of these chips, it’s a Microchip MCP23008 chip that uses the I2C protocol for communications.

You are probably already familiar with using shift registers like the 595 series for port expansion. There can be benefits to using an I2C device instead. One of them comes when using multiple port expander chips. With cascading shift registers you must always shift in the data for the entire chain of chips. But I2C devices are individually addressable, so you only need to push data over the I2C bus for the chips that need to be changed, the others will remain unaffected. It is especially easy to use these if you already have another I2C device in your project design as the addition only requires the connection of the SDA and SCL lines. Keep them in mind for future undertakings.

4 thoughts on “Working With I2C Port Expanders

Leave a Reply to KanchoBlindsideCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.