int A = 2;
int B = 3;
int C = 4;
int D = 5;
int E = 6;
int F = 7;
int G = 8;
int switchUpPin = 9;
int counter = 0;
int buttonUpState = 0;
int lastButtonUpState = 0;
void setup() {
Serial.begin(9600);
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(switchUpPin, INPUT);
}
void loop() {
buttonUpState = digitalRead(switchUpPin);
if (buttonUpState != lastButtonUpState) {
if (buttonUpState == HIGH) {
counter = (counter + 1) % 10;
showNumber(counter);
delay(300);
}
lastButtonUpState = buttonUpState;
}
delay(50);
}
void showNumber(int number) {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
if (number != 1 && number != 4)
digitalWrite(A, HIGH);
if (number != 5 && number != 6)
digitalWrite(B, HIGH);
if (number != 2)
digitalWrite(C, HIGH);
if (number != 1 && number != 4 && number != 7)
digitalWrite(D, HIGH);
if (number == 2 || number == 6 || number == 8 || number == 0)
digitalWrite(E, HIGH);
if (number != 1 && number != 2 && number != 3 && number != 7)
digitalWrite(F, HIGH);
if (number != 0 && number != 1 && number != 7)
digitalWrite(G, HIGH);
}