Boa noite amigos,
Quero implementar um contador progressivo, com Arduino Uno controlando dois displays sete segmentos, que quando acionado e mantido acionado um push botton o contador inicie a contagem de tempo em segundos, ao desligar o botão, o contador mantenha a informação da contagem e zere quando o botão for acionado de novo, reiniciando a contagem.
Exatamente como no vídeo abaixo, mas não encontro esse código:
https://www.youtube.com/watch?v=ys5W6V0ciDc
O código vai até a contagem, mas está sem o push botton , se alguém puder colaborar e me ajudar a resolver esse problema de iniciante.
Abs
const int display_1_Pinout[7] = { 2, 3, 4, 5, 6, 7, 8 };
const int display_2_Pinout[7] = { 9, 10, 11, 12, A0, A1, A2 };
const byte anodeDisplay[10] =
{
0b1000000, //0
0b1111001, //1
0b0100100, //2
0b0110000, //3
0b0011001, //4
0b0010010, //5
0b0000010, //6
0b1111000, //7
0b0000000, //8
0b0010000, //9
};//
void setup()
{
for(int i = 0; i < 7; i++)
{
pinMode(display_1_Pinout[i], OUTPUT);
pinMode(display_2_Pinout[i], OUTPUT);
}
}//
void Display_2_Write(int number)
{
byte numberBit = anodeDisplay[number];
for (int i = 0; i < 7; i++)
{
int bit = bitRead(numberBit, i);
digitalWrite(display_2_Pinout[i], bit);
}
}//
void Display_1_Write(int number)
{
byte numberBit = anodeDisplay[number];
for (int i = 0; i < 7; i++)
{
int bit = bitRead(numberBit, i);
digitalWrite(display_1_Pinout[i], bit);
}
}//
void Display_Show(int number)
{
int units = number % 10;
int tens = number / 10;
Display_1_Write(units);
Display_2_Write(tens);
}/*********************************************/
void loop()
{
for(int cnt=0; cnt<100; cnt++)
{
Display_Show(cnt);
delay(1000);
}
delay(10000);
}