#define Led_A 23
#define Led_B 25
#define Led_C 26
#define Led_D 19
#define Led_E 18
#define Led_F 5
#define Led_G 17
#define BOT1 16
#define BOT2 4
#define Unidade 15
#define Dezena 2
int contador = 0;
#include <Wire.h>
bool BS1 = 0, BS2 = 0, S1 = 0, S2 = 0;
uint8_t Numeros[10][7]={
{1,1,1,1,1,1,0},
{0,1,1,0,0,0,0},
{1,1,0,1,1,0,1},
{1,1,1,1,0,0,1},
{0,1,1,0,0,1,1},
{1,0,1,1,0,1,1},
{0,0,1,1,1,1,1},
{1,1,1,0,0,0,0},
{1,1,1,1,1,1,1},
{1,1,1,0,0,1,1},
};
void coloca_display(int valor)
{
digitalWrite(Led_A,Numeros[valor][0] );
digitalWrite(Led_B,Numeros[valor][1] );
digitalWrite(Led_C,Numeros[valor][2] );
digitalWrite(Led_D,Numeros[valor][3] );
digitalWrite(Led_E,Numeros[valor][4] );
digitalWrite(Led_F,Numeros[valor][5] );
digitalWrite(Led_G,Numeros[valor][6] );
}
void setup()
{
pinMode(Led_A, OUTPUT);
pinMode(Led_B, OUTPUT);
pinMode(Led_C, OUTPUT);
pinMode(Led_D, OUTPUT);
pinMode(Led_E, OUTPUT);
pinMode(Led_F, OUTPUT);
pinMode(Led_G, OUTPUT);
pinMode(BOT1, INPUT);
pinMode(BOT2, INPUT);
pinMode(Unidade, OUTPUT);
pinMode(Dezena, OUTPUT);
Serial.begin(115200);
}
void loop()
{
digitalWrite(Dezena,0);
coloca_display(contador/10);
digitalWrite(Unidade,1);
delay(10);
digitalWrite(Unidade,0);
coloca_display(contador%10);
digitalWrite(Dezena,1);
delay(10);
BS1 = digitalRead(BOT1);
BS2 = digitalRead(BOT2);
if(BS1 == 1 && S1 == 0)
{
contador++;
S1 = 1;
}
if(BS2 == 1 && S2 == 0)
{
contador--;
S2 = 1;
}
if(BS1 == 0 && S1 == 1){
S1 = 0;
}
if(BS2 == 0 && S2 == 1){
S2 = 0;
}
if(contador>99)contador = 0;
if(contador<0)contador = 99;
}