<div dir="ltr">Hmm - just realised both NPIC6C595 and 596 are open-drain, so that's probably why I'm not using it (Sunday mornings, heh?) :)<br><br><div class="gmail_quote"><div dir="ltr">On Sun, 9 Aug 2015 at 10:18 Jason Tribbeck <<a href="mailto:jason@tribbeck.com">jason@tribbeck.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div>With the '595 you can shift the values in, and then tell it to transfer the shift register to the output register. This means you can pre-shift the pattern into the register, change the row, and then shift the pattern to the output.<br><br></div>If you're clever with your design, you could make the row change and the output transfer use the same signal - so there would not be much in the way of delay. And if you're using SPI, then you could use the CS signal connected to the RCLK signal (which does the transfer) - it's a positive edge triggered input...<br><br></div>Although if you are concerned about the power going through GND (or +5V), then I would look at the NPIC6C596, which is similar to the '596 (which is an open-collector version of the '595) - this is designed for higher current LED drives, and is functionally identical to the '596, and doesn't cost that much (quick look at Farnell, and the NPIC6C596 price is £0.64; 74HC595 is £0.43).<br><br></div>Unfortunately, it's not pin-compatible (and I prefer the pin layout of the '596).<br><br></div>And I'm using an HC595 and NPIC6C596 together in an LED matrix, so I shift 16 bits and then clock both at the same time - the HC595 drives a ULN2981 for the rows, and the NPIC6C596 drives the columns directly. I will be bit-banging the signals, because the PIC I'm using doesn't have SPI (it's the smallest one I could find with a UART).<br><br></div>Although there is the NPIC6C595 which is open-drain, which I've only just considered using for driving the rows directly...</div><div dir="ltr"><br><br></div></blockquote></div></div>