/**
 * 74LS595 Shift Register 
 * by BARRAGAN http://barraganstudio.com
 * 
 * Sends the value stored in the byte variable counter to the 
 * shift register. The shift register outputs QA to QH will  
 * reflect the value sent.
 */

int data = 0; 	   // Wiring pin 0 for data 
int clock = 1;     // Wiring pin 1 for clock 
int strobe = 2;    // Wiring pin 2 for the strobe (latch) 
byte counter = 0; 
 
void setup() { 
  pinMode(data OUTPUT); 
  pinMode(clock, OUTPUT); 
  pinMode(strobe, OUTPUT); 
} 
 
void loop() { 
  digitalWrite(strobe, LOW); 
  shiftOut(data, clock, LSBFIRST, counter);  // writes counter to the shift register  
  digitalWrite(strobe, HIGH); 
  delay(1000); 
  counter = counter + 1; 
} 

