Looking for a shift register for both serial in parallel out and parallel in serial out for use on SPI bus. Any suggestions are appreciated.
HC595, HC164, HC165
Stealing Proteus doesn't make you an engineer.
anything that is bidirectional?
Looking more into whats available, is there any difference between a port expander and an actual shift register? Seems like the port expander will do exactly what I need and a shift register will do the job also but not as compactly.
With a bidirectional device, you will have to provide all the different strobes, latch-shifteregister-to-out, latch-in-to-shiftregister, etc. It is then no longer real SPI which "should" take only a clock, an enable, MOSI, and MISO.
How about using a Tiny? Then you could do it with a 1 byte "command" and a 1 byte data, read or write, depending on the command. Would really reduce the number of parallel control lines needed.
Until Black Lives Matter, we do not have "All Lives Matter"!
Never once they are set as input or output they will not change
Microchip MCP23S17 and MCP23S08 sound like they might be what you're looking for. The'S17 is a 16 bit I/O port, and the 'S08 is an 8 bit port. Both are bidirectional and use only the SPI interface. There are also versions of both chips available using I2C if you happen to find that useful.
This should give you a broad selection:
© 2020 Microchip Technology Inc.