/* Serial to Parallel Shifting-Out with a 74HC595 Copyright John Yu http://osoyoo.com/?p=189 */ int latch = 8; int clock = 12; int data_out = 11; byte leds = 0; void setup() { pinMode(latch, OUTPUT); pinMode(data_out, OUTPUT); pinMode(clock, OUTPUT); } void loop() { leds = 1; sendDataToUC595(latch,data_out,clock,leds); delay(500); for (int i = 0; i < 7; i++) { leds *=2; sendDataToUC595(latch,data_out,clock,leds); delay(400); } } void sendDataToUC595(int latch,int data_out,int clock,byte out_value) { digitalWrite(latch, LOW); shiftOut(data_out, clock, LSBFIRST, out_value);//sent leds value to UC595 digitalWrite(latch, HIGH); }