Gast
#4947308
Hallo ich habe ein kleines Programmierproblem. Ich soll mit dem Mikrocontroller ATTiny24 eine Frequenz einlesen und ungefähr doppelt so schnell wieder ausgeben. Zum Einlesen benutze ich den 16-Bit Timer mit einer Auflösung von 1us pro DigitalWert und den Input-Capture Interrupt. Zum ausgeben benutze ich den 8 Bit Timer, der jedoch hier vernachlässigt werden kann. Mein Problem ist, dass ich zwar das Eingangssignal mit einer Mittelwertbildung im ICR1 Interrupt berechnen kann, dieses Ergebnis jedoch nicht weitrhin in der main Routine zur verfügung steht. Mein Latein ist dabei am Ende, ich habe 1 Tag ununterbrochen getestet und ich verstehe nicht, warum mein berechnetes Eingangssignal in der Main Routine den Wert 0 besitzt. Ich hoffe ihr könnt mir helfen. Im Anhang der abgespeckte Code (Port- und 8-Bit Timer Initialisierung fehlt), an dem ich verzweifel. Zu erwähnen ist, dass ich mit einem Frequenzgenerator eine Testfrequenz von 50Hz eingestellt habe.