int data = 2; //what is sent, HIGH=1
int latch = 3; //latch data, LOW=latch, HIGH= pass on data
int clock = 4; //clock for marching data onward
void setup()
{
pinMode(data, OUTPUT); //normal pinmode settings at setup
pinMode(latch, OUTPUT);
pinMode(clock, OUTPUT);
}
void loop()
{
digitalWrite(latch, HIGH); //latch high when receiving data
for (int i = 0; i < 16; i++)
{
digitalWrite(data, HIGH); //first data
digitalWrite(clock, HIGH); //then clock
delay(100);
digitalWrite(clock, LOW);
}
digitalWrite(latch, LOW); //data received, latch low
digitalWrite(latch, HIGH);
for (int i = 0; i < 16; i++)
{
digitalWrite(data, LOW);
digitalWrite(clock, HIGH);
delay(100);
digitalWrite(clock, LOW);
}
digitalWrite(latch, LOW);
}