Outputs are easy, there are many options for output expansion. The two most commonly used options are:
- 74HCT595 shift register
These two chips are supported in the Netduino.Foundation library.
Note that the library contains documentation on hooking up the various devices as well as sample code.
The MCP23008 is an I2C device and you can have multiple chips on the same bus. You just have to set the addresses correctly, each chip must have a unique address. These chips require only two digital IOs from the Netduino (I2C clock and I2C data).
The 74HCT595 is an SPI device. At the moment the library only supports a single chip but support for more chips will come along. Note that it is critical that if you use this device then you should get the HCT or the HC versions of the shift register. These chips require only two digital IOs (SPI clock and SPI data).
Input is a little more complex. The MCP23008 would be the obvious candidate as this supports both input and output from the various pins. Input support has not been added at the moment.
Let us know how you get on.