I want to have my Arduino control several SPI slave devices, among them a 74HC595 shift register. I've having some trouble understanding how to properly handle communication - I get that the Slave Select (SS) should be tied to the Register Clock in so that it is enabled when low, but wouldn't the parallel output keep changing when sending serial data to other SPI slaves (having SS high)?
1 Answer
No, the outputs won't change, even though the contents of the internal shift register will be changing. You just need to make sure that you shift in the correct data before the next time you strobe the output latches.
-
\$\begingroup\$ So the register latches update on the low-high transition instead of the high state? \$\endgroup\$ May 7, 2014 at 12:55
-
\$\begingroup\$ The output register (it is a register, not a latch) copies the shift register contents on the positive flank of the storage clock. \$\endgroup\$ May 7, 2014 at 17:08