As long as you have direct software control of the 3 GPIO pins (shift, load, serial_data), it's fairly simple to write a routine to send serial data. Just make sure that you *never* change more than 1 GPIO pin in the same instruction, otherwise you run the risk of a logic race condition and can get unreliable operation. Always send onto the serial data line first, then wiggle the clk or load signal; since I use RasPi, I add a 1usec hardware-enforced delay to guarantee timing. Be careful when cascading multiple shift registers; fortunately the '595 has a specific data-out pin for cascading.
If you are ultra-paranoid like I am, bring the end of the serial chain back onto the Arduino so you can verify the data was sent-out correctly. I've used '595 shift-registers on 3 projects, and HV5530 and even '374 on 2 others, with zero problems. In the past, some folks on this forum have had problems with data-corruption with shift-registers, and it's usually caused by setup/hold time violations, or running logic-levels at a different voltage than specified in the datasheet. -- You received this message because you are subscribed to the Google Groups "neonixie-l" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web, visit https://groups.google.com/d/msgid/neonixie-l/c218f20f-1381-4158-b13c-144429598475%40googlegroups.com.
