int pin_a = 13;
int pin_b = 12;
int pin_c = 11;
int pin_d = 10;
int pin_e = 9;
int pin_f = 8;
int pin_g = 7;
int counter = 0;
int btn = 6;
int button_state, button_old_state;
int dig1 = 2;
int dig2 = 4;
void setup() {
pinMode(pin_a, OUTPUT);
pinMode(pin_b, OUTPUT);
pinMode(pin_c, OUTPUT);
pinMode(pin_d, OUTPUT);
pinMode(pin_e, OUTPUT);
pinMode(pin_f, OUTPUT);
pinMode(pin_g, OUTPUT);
pinMode(dig1, OUTPUT);
pinMode(dig2, OUTPUT);
pinMode(btn, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
button_state = !digitalRead(btn);
if(button_state == 1 && button_old_state == 0){
counter++;
Serial.println(counter);
counter = counter % 31;
}
else{
delay(50);
}
button_old_state = button_state;
if(counter == 0){
zero();
}
else if (counter == 1){
one();
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
}
else if (counter == 2){
two();
}
else if (counter == 3){
three();
}
else if (counter == 4){
four();
}
else if (counter == 5){
five();
}
else if (counter == 6){
six();
}
else if (counter == 7){
seven();
}
else if (counter == 8){
eight();
}
else if (counter == 9){
nine();
}
else if (counter == 10){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
zero();
delay(10);
clear();
delay(10);
}
else if (counter == 11){
one();
digitalWrite(dig1, LOW);
digitalWrite(dig2, LOW);
}
else if (counter == 12){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
two();
delay(10);
clear();
delay(10);
}
else if (counter == 13){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
three();
delay(10);
clear();
delay(10);
}
else if (counter == 14){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
four();
delay(10);
clear();
delay(10);
}
else if (counter == 15){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
five();
delay(10);
clear();
delay(10);
}
else if (counter == 16){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
six();
delay(10);
clear();
delay(10);
}
else if (counter == 17){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
seven();
delay(10);
clear();
delay(10);
}
else if (counter == 18){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
eight();
delay(10);
clear();
delay(10);
}
else if (counter == 19){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
one();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
nine();
delay(10);
clear();
delay(10);
}
else if (counter == 20){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
zero();
delay(10);
clear();
delay(10);
}
else if (counter == 21){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
one();
delay(10);
clear();
delay(10);
}
else if (counter == 22){
digitalWrite(dig1, LOW);
digitalWrite(dig2, LOW);
two();
delay(10);
clear();
delay(10);
}
else if (counter == 23){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
three();
delay(10);
clear();
delay(10);
}
else if (counter == 24){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
four();
delay(10);
clear();
delay(10);
}
else if (counter == 25){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
five();
delay(10);
clear();
delay(10);
}
else if (counter == 26){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
six();
delay(10);
clear();
delay(10);
}
else if (counter == 27){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
seven();
delay(10);
clear();
delay(10);
}
else if (counter == 28){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
eight();
delay(10);
clear();
delay(10);
}
else if (counter == 29){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
two();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
nine();
delay(10);
clear();
delay(10);
}
else if (counter == 30){
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
three();
delay(10);
clear();
delay(10);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
zero();
delay(10);
clear();
delay(10);
}
}
void clear(){
digitalWrite(pin_a, LOW);
digitalWrite(pin_b, LOW);
digitalWrite(pin_c, LOW);
digitalWrite(pin_d, LOW);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, LOW);
digitalWrite(pin_g, LOW);
}
void zero(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, HIGH);
digitalWrite(pin_f, HIGH);
digitalWrite(pin_g, LOW);
}
void one(){
digitalWrite(pin_a, LOW);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, LOW);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, LOW);
digitalWrite(pin_g, LOW);
}
void two(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, LOW);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, HIGH);
digitalWrite(pin_f, LOW);
digitalWrite(pin_g, HIGH);
}
void three(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, LOW);
digitalWrite(pin_g, HIGH);
}
void four(){
digitalWrite(pin_a, LOW);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, LOW);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, HIGH);
digitalWrite(pin_g, HIGH);
}
void five(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, LOW);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, HIGH);
digitalWrite(pin_g, HIGH);
}
void six(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, LOW);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, HIGH);
digitalWrite(pin_f, HIGH);
digitalWrite(pin_g, HIGH);
}
void seven(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, LOW);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, LOW);
digitalWrite(pin_g, LOW);
}
void eight(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, HIGH);
digitalWrite(pin_f, HIGH);
digitalWrite(pin_g, HIGH);
}
void nine(){
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, LOW);
digitalWrite(pin_f, HIGH);
digitalWrite(pin_g, HIGH);
}