How to daisy-chain several 74HC165 shift registers

I am working on an Arduino Due (or similar) based synthesizer keyboard, and I need to connect the 54 keys to the Due. I plan to use daisy-chained parallel-in, serial-out shift registers, but I can't figure out how to do it. How do I do it, and how many shift registers will I need?

Arrange your keys in a 8x7 matrix .

Drive rows with eg a 74HC595 serial-in, parallel out s/r, and read columns with a 74HC165 parallel in , serial out s/r.

You'll need a diode in series with each key to avoid aliasing.

You'll need 3 arduino pins for each to do the clocking and reading.


You get 8 inputs with every shift register so you will need 8 of them for your inputs
read this for how to

Or use a matrix like mentioned above.

A/ he's only got 54 keys so 7 s/r's would be enough.
B/ how cumbersome compared to the matrix approach. He'd need 54 pullups/downs as well


Always assuming that is he has access to both sides of the switch.