
Need more pins on your Arduino? Maybe an I/O expander is what you need. These chips use the 2-pins of the i2c port to give 8 more in/out pins. You can have up to 8 of them share the same two pins for up to 64 additional pins! The trade off is speed (its about 50x slower to go through the expander than direct) and memory (the library takes up both RAM and flash). We wrote a handy library with examples of reading, writing and setting pullups for the inexpensive and easy-to-breadboard MCP23008.
Download the library from github.
Purchase the chips via our part selector.
Add it to your project with our Eagle library.

Printable catalog (PDF)
FEED
Have you worked at all with the MCP23017-E/SP-ND, the 16 bit version of this? I imagine it will only take a few code changes to get it to work, but I haven’t tried it yet so I thought I’d ask. Thanks!
Comment by Izrun — September 3, 2010 @ 10:27 am