Hallo zusammen.

Habe folgendes Problem: Ich habe ein Eingangssignal, das ein Rechtecksignal mit einer Tastrate von 50% ist und eine Pulsbreite von ca. 2ms bis 0,1ms aufweist (Signal kommt von einem Sensor der die Drehzahl einer Welle erfasst)
Nun möchte ich dieses Programm mithilfe eines MEGA8 modifizieren, genauergesagt soll die Pulsbreite 10% breiter sein als die des Eingangssignals, d.H. wenn das Eingangssignal eine Pulsbreite von 1ms hat, hat das Ausgangssignal eine Pulsbreite von 1,1ms.

Das Soweit zur Theorie. In der Umsetzung ist es mir bisher zwar gelungen, das Eingangssignal einzulesen, jedoch hapert es noch an der Ausgabe.
Ich habe hier bisher immer eine Variable bekommen und diese in das COMPARE1A register geschrieben. (OC1A an PB1)
Es hat wunderbar funktioniert, jedoch passiert es etwa alle 5 Sekunden, dass das Ausgangssignal einfach abreißt, d.h. ich ein konstantes Low Signal rausbekomme, das dauert etwa 1 sekunde, dann funktioniert es wieder, nach 5 Sekunden wieder das selbe... Das Eingangssignal ist nicht schuld, das liegt dauerhaft an.

woran kann das liegen? Ich hoffe jemand hat Rat....

Grüße Paul