We live in a design world where vendors keep pushing us to higher and higher integration components, but we ran across a couple of applications recently where it makes sense to use some VERY old technology.
We have two client projects where we were considering using serial I/O expanders. Microchip and NXP both have some very nice parts in this category. They do lots of cool things and in quantity cost anywhere from about a buck to a few bucks. These parts can definitely add I/O inexpensively to your system, but what if you don’t need all the cute bells and whistles?
When all you need to do is provide a few extra input or output pins (which is what we needed) run back to your old TTL data book for advice. The 74HC594 will give you eight new outputs on an SPI bus for about eight cents and the 74HC165 will give you eight new inputs for about the same price. You can daisy chain the devices together on your SPI bus for any number of inputs or outputs. The example below provides 16 inputs and 16 outputs for the cost of four I/O pins and a little software.
Sometimes it pays to remember the good old days!