const int dataPin = 14;   /* DS */
const int clockPin = 13;  /* SHCP */
const int latchPin = 12;  /* STCP */

void Send_595(int data) {
  //data = ~data;
  for (int i = 7; i >= 0; i--) {
    digitalWrite(dataPin, ((data >> i) & 1)); // MSB First
    digitalWrite(clockPin, LOW);
    digitalWrite(clockPin, HIGH);
  }
  digitalWrite(latchPin, LOW);
  digitalWrite(latchPin, HIGH);
}

void setup() {
  pinMode(dataPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(latchPin, OUTPUT);
}

void loop() {
  Send_595(0x01);  delay(500);  // 0000 0001
  Send_595(0x02);  delay(500);  // 0000 0010
  Send_595(0x04);  delay(500);  // 0000 0100
  Send_595(0x08);  delay(500);  // 0000 1000
  Send_595(0x10);  delay(500);  // 0001 0000
  Send_595(0x20);  delay(500);  // 0010 0000
  Send_595(0x40);  delay(500);  // 0100 0000
  Send_595(0x80);  delay(500);  // 1000 0000
}
74HC595