Entscheide dich einmal. Oben verwendest du Timer0, hier nun Timer1.
Du verwendest jetzt am Schluss Timer1 FastPWM mit ICR1 als Top. Der
gesamte Port B ist auf output. OC1A und OC1B wird nichtinvertierend
werdendet. Du misst and PB6 und PB7, was OC1B und OC1C entspricht. OC1A
ist PB5. OCR1B hat genau Top, was bei FastPWM einem konstanten 5 V Pegel
auf OC1B (PB6) entpricht, so wie im Datenblatt beschrieben. OC1C (PB7)
ist 0 V, da dieser nicht für PWM verwendet wird und als Defaultwert im
PORT Register 0 hat. OCR1A ist höher als Top, das sollte also auf OC1A
(PB5) auch 5 V ergeben, wenn dus mal misst.
So kann das nichts werden.
Den Top Wert legst du schon vor der Konfiguration des Modus fest. Sollte
zwar nicht stören aber find ich irgendwie unschön. Ich mach das
normalerweise so. Timer explizit anhalten. Modus setzen (WGMx und COMx
Bits). Ggf Top Werte und dann Compare Werte setzen. Ggf Pins auf output
setzen. Timer anwerfen (Prescaler setzen).