Help with writing to registers for 1Hz pwm and timer interrupt

I think I might have found a solution by changing this part of the code

void timer1_get() {
  tmr1 = TCNT1 - previous;
  previous = TCNT1;
  //TCNT1  = 0;   // reset Timer1
  
}
 
ISR(TIMER1_OVF_vect) {  // Timer1 interrupt service routine (ISR)
  tmr1 = 0;
  previous = 0;
}

So instead of reseting the timer after each cero crossing I save the previous value and later reset when timer1 overflows.