void loop(){
static boolean segments[32] = { 1,0,1,1,0,1,1,1, //1-8
0,1,1,1,1,0,1,1, //9-16
1,1,1,0,1,1,1,1, //17-24
1,1,0,1,1,1,1,1}; //25-32
//First send a startbit 1
digitalWrite(DATA_PIN, HIGH);
digitalWrite(CLOCK_PIN, HIGH);
digitalWrite(CLOCK_PIN, LOW);
//Then the sign
digitalWrite(DATA_PIN, LOW);
digitalWrite(CLOCK_PIN, HIGH);
digitalWrite(CLOCK_PIN, LOW);
//Send the 32 bits of data
for (uint8_t i = 0; i < 32; i++){
digitalWrite(DATA_PIN, segments[i] ? HIGH : LOW);
digitalWrite(CLOCK_PIN, HIGH);
digitalWrite(CLOCK_PIN, LOW);
}
//3 more clock LOW pulses to get a total of 36 clock pulses
digitalWrite(DATA_PIN, LOW);
for (uint8_t i = 0; i < 2; i++){
digitalWrite(CLOCK_PIN, HIGH);
digitalWrite(CLOCK_PIN, LOW);
}
// Then the latch....
digitalWrite(DATA_PIN, HIGH);
digitalWrite(CLOCK_PIN, HIGH);
digitalWrite(CLOCK_PIN, LOW);
}
}