void setup() {
for (int pin = 2; pin <= 9; pin++) {
pinMode(pin, OUTPUT);
}
}
void loop() {
digitalWrite(9, HIGH);
delay(5);
digitalWrite(9, LOW);
delay(5);
show9(); delay(1000);
show8(); delay(1000);
show7(); delay(1000);
show6(); delay(1000);
show5(); delay(1000);
show4(); delay(1000);
show3(); delay(1000);
show2(); delay(1000);
show1(); delay(1000);
show0(); delay(1000);
}
// Define each digit manually
void show0() {
writeSegments(1,1,1,1,1,1,0);
}
void show1() {
writeSegments(0,1,1,0,0,0,0);
}
void show2() {
writeSegments(1,1,0,1,1,0,1);
}
void show3() {
writeSegments(1,1,1,1,0,0,1);
}
void show4() {
writeSegments(0,1,1,0,0,1,1);
}
void show5() {
writeSegments(1,0,1,1,0,1,1);
}
void show6() {
writeSegments(1,0,1,1,1,1,1);
}
void show7() {
writeSegments(1,1,1,0,0,0,0);
}
void show8() {
writeSegments(1,1,1,1,1,1,1);
}
void show9() {
writeSegments(1,1,1,1,0,1,1);
}
// Function to write each segment
void writeSegments(bool a, bool b, bool c, bool d, bool e, bool f, bool g) {
digitalWrite(2, a); // A
digitalWrite(3, b); // B
digitalWrite(4, c); // C
digitalWrite(5, d); // D
digitalWrite(6, e); // E
digitalWrite(7, f); // F
digitalWrite(8, g); // G
}