calc tim

#include <iom1280.h> 
#include <inavr.h>        
#include <stdint.h>
 
 
#define FCREV_CLK_IO 16000000UL
 
__no_init uint32_t Timer_curentValue;
__no_init uint32_t Nr_OV;
 
uint8_t i;
uint32_t timp;
#pragma vector = TIMER1_OVF_vect 
__interrupt void T1_OVF() 
{  
  // Incrementarea numarului de overflow-uri 
  Nr_OV++;  
}
 
 
int main()
{
  if((MCUSR & (1 << EXTRF)) == (1 << EXTRF)) //s-a dat reset
  {
    if(Timer_curentValue > 0 || Nr_OV > 0)
    {
      Timer_curentValue += ((uint32_t) Nr_OV) << 16;
      timp = Timer_curentValue * 8/ (FCREV_CLK_IO / 1000UL);
      ++i; //aici pui breakpoint
      Timer_curentValue = 0;
      Nr_OV = 0;
      TCCR1B |= (1 << CS11);
      TIMSK1 |= (1 << TOIE1);
      __enable_interrupt();
    }
    else
    {
      Timer_curentValue = 0;
      Nr_OV = 0;
      TCCR1B |= (1 << CS11);
      TIMSK1 |= (1 << TOIE1);
      __enable_interrupt();
    }
  }
  else
  {
      Timer_curentValue = 0;
      Nr_OV = 0;
  }
  MCUSR = 0;
  while(1)
  {
    Timer_curentValue = TCNT1;
  }
}