Gast
#365367
Hi! Ich möchte ein Servo-Signal vom Modellbau-Empänger mit meinem mega8 messen. dazu habe ich Programm gemacht (Anhang), welches das Signal mit Interrupts an INT0 und INT1 und dem Timer0 messen soll. Den wert(signallänge) sende ich dann mal als Test (mit Uart) an den PC. Doch leider kommt nur Unsinn raus: 86,32,61,67,40,97,40...... u.s.w. dabei müsste das signal(1-2ms) bei 8MHz/256 höchstens etwa 70-20 Takte lang sein. Wo ist der Fehler? rauscht ein Servosignal stark? Zum Programm: INT1 hat eine steigende Flanke, soll also bei beginn des PWM-high signals den start der messung übernehmen. in diesem interrupt setzte ich den 8bit timer auf null; nachher schalte ich den Interrupt für den INT1 aus, den für INT0 ein. Interupt1 fertig. INT0 hat eine fallene Flanke, soll bei Ende des High-Signals loslegen: Schaltet den Interrupt für INT0 aus, für INT1 ein und liest den wert von des Timers aus, sendet ihn per Uart an den PC.Interupt0 fertig. bitte hilfe, bin für alles dankbar, auch Vorschläge wie ich das sonst realisieren könnte. Grüsse Christian