volatile uint8_t a; // ???

Bitte Code-Tags verwenden. Das Timer-Setup habe ich nicht überprüft weil es mir zu mühselig ist die Bits (wie mode, prescal, enable, interrupt?) rauszufummeln. Hilfreich, auch für dich selbst, wäre jeweils ein kleiner Kommentar dazu:

TCCR1A=0x40; // hier wird dies und das eingestellt
TCCR1B=0x04; // noch mehr Einstellungen

Ob die ISR aufgerufen wird könntest du einfach so testen:

ISR (TIMER1_OVF_vect)
{
a++;
PORTC = 0x03;
}

Gruß

mic