byte dig_out = 0b11111001; // code for 0
bool decode = false;
byte counter = 0;
byte count_flag = false; // flag false --- count up // count down
bool but_stat = false;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
for (int x = 2; x < 9; x++){
pinMode(x,OUTPUT);
}
pinMode(9, INPUT);
pinMode(10, INPUT);
}
void loop() {
but_stat = digitalRead(9);
if (but_stat == true){
count_flag = 0; //count up
}
but_stat = digitalRead(10);
if(but_stat == true){
count_flag = 1; //count down
}
switch (count_flag){
case 0:
counter = counter + 1;
if (counter >9){
counter = 0; }
break;
case 1:
counter = counter - 1;
if (counter == 255){
counter = 9;
}
break;
}
Serial.println(count_flag);
switch (counter){
case 0:
dig_out = 0b11000000;
break;
case 1:
dig_out = 0b11111001;
break;
case 2:
dig_out = 0b10100100;
break;
case 3:
dig_out = 0b10110000;
break;
case 4:
dig_out = 0b10011001;
break;
case 5:
dig_out = 0b10010010;
break;
case 6:
dig_out = 0b10000010;
break;
case 7:
dig_out = 0b111111000;
break;
case 8:
dig_out = 0b00000000;
break;
case 9:
dig_out = 0b10010000;
break;
}
for (int x = 0; x < 7; x++){
decode = (dig_out >> x) & (0b00000001);
digitalWrite(x+2, decode);
}
delay(1000);
}