Таймер прерывает игру на Arduino, не работает

#arduino #interrupt #arduino-uno #arduino-ide

Вопрос:

У меня есть игра в пинг-понг, и я пытаюсь добавить к ней 60-секундный таймер. Таким образом, если раунд не будет завершен в течение 60 секунд, он завершится автоматически.

Цель состоит в том, чтобы считать без использования миллиса()

Я пытался реализовать это, но, похоже, это не сработало.

Поэтому я попытался распечатать секунды на последовательном мониторе, и он просто постоянно показывает 0000000000000000000000000

В чем здесь проблема?

 volatile uint16_t counter = 0;
volatile uint16_t seconds = 0;

void setup() 
{
  //timer1 for overflow interrupt
  noInterrupts();
  TCCR1A = 0;             //initialize timer1
  TCCR1B = 0;
  TCCR1B |= 0b00000100;   //256 prescaler
  TIMSK1 |= 0b00000001;   //enable overflow interrupt
  interrupts();
}

ISR(TIMER1_OVF_vect)  //timer overflow ISR: update counter
{
    counter  ;
  if (counter == 62500)
  {
    counter = 0;
    seconds  ;
  }
}

void loop() 
{
  Serial.print(seconds);
  game = update();
  lcd.clear(); 
  render();
 

Я включил части кода, которые непосредственно связаны с проблемой.

Помощь была бы очень признательна!