avr/io.h includierst du zweimal, aber das ist kein Problem. Was ich
komisch finde, das du in der while-Schleife den Compare-Wert setzt. Das
musst du nicht machen, damit schreibst den ja ständig neu da rein. Also
mal raus aus der while-Schleife. Aber das ist auch nicht das Problem.
Ich würde einfach mal probieren, ob der Timer überhaupt läuft. Also
stell ihn einfach mal auf Normal-Mode und lass den Overflow Interrupt
zu. In diesem Interrupt toggelst du einfach mal eine LED. Einfach um zu
sehen, ob der Timer überhaupt etwas macht. Wenn er das macht, lässt du
den Timer in dem Modus und lädst irgend eine zahl in OCR1A und lässt
diesen Interrupt zu und führst wieder den selben Code aus, wie schon
vorher im Overflow Interrupt. Also nach und nach vorhangeln. Weil
eigentlich sollte der Code soweit laufen, ich hoffe, du hast exakt
diesen Code auch probiert und hast nicht aus einem Projekt einiges
weggelassen.
MfG Dennis
Edit:
Da ist es mir doch gerade aufgefallen. Du nutzt einfach den falschen
Pin. PB2 ist OC0A. PA6 ist OC1A. Dann sollte alles laufen.