Hallo,

Ich dachte es geht folgendes:

Timer2 register TCCR2: CS22 = 0, CS21=0, CS20=1
dass heisst 'No Prescaling'
Damit ist die taktfrequenz von Timer2 8MHz

OCR2 = 0x6E = 110
Dass heisst: Timer2 zahlt hoch von 0 bis zum 110 (sind 111 stufen zusammen)

8MHz / 111 = 72072 Hz
Dass heisst: die Sleep() function variabele 'count72kHz' wird mit eimen frequenz von 72KHz erhoht und nicht mit 36KHz. Darum soll man 216/72 berechnen und nicht 216/36.

Die InfraRot ausgang wirdt mit diesen selben 72KHz ge-'toggled' damit ein frequenz von 36KHz entsteht.

gruss

Henk