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
}