Hallo! Ich bin dabei eine Zeit (mit auftretenden Aktionen) zu messen und verwende dafür das C-Control Pro Mega128 Board von Conrad. Die Zeitmessung ist eine wiederkehrende Aufgabe mit kleinen pausen dazwischen. Da leider für meine Meßaufgabe ein 16 Bit Timer nicht ausreicht verwende ich die ISR des Timers in der ich eine Variable inkrementiere und somit ausreichten lange messen kann. Jedoch nach verlassen steht der Timerwert immer noch auf 65536 und ich weiss nciht wie zurücksetzen. Oder aber die Ausgabe im Debugfenster ist falsch und somit ist ein umrechechnen in einen Zeitwert auch unmöglich. Messe ich jedoch nur kürzere Zeiten wobei der 16 Bit Timer ausreicht und nicht in die ISR gelangt setzt er sich immer wieder auf Null und fängt wie gewünscht von vorne an. Wie kann ich es nun anstellen den Timer quasi in der ISR zurüchzusetzten? Danke! Grüsse Bosch
Wenn du dein Programm nicht herzeigst wird dir auch niemand sagen können, was daran nicht stimmt.
Nachtrag: Wenn diese Fall aufgetreten ist mit ISR und das Debugfenster bei jeder darauffolgenden Messung bis zu einem Neustart des Controllers die 65536 (Timerwert) ausgibt, dann passiert folgendes: Bei einer Messung die innerhalb der 16 Bit liegt und nicht die ISR aufgerufen wird bleibt die Variable logisch Null(richtig) und der Timerwert 65536(falsch), doch wenn die ISR aufgerufen wird usw. dann kommt am Ende ein e (je nachdem wie oft die ISR aufgerufen)eins in der Variable heraus. Also muss der Controller doch irgendwas Zählen aber stellt es nicht dar.
Kein Problem. Also wie im Code ersichtlich läuft der Timer mit einer ADC-Wandlung zusammein solange ein Signal (Port_ReadBit(36)) auf low ist. Wenn es zurückspringt sollen die gemessenen Zeitwerte im Debugfenster angezeigt werden. Kannst du mir mit der Timergeschichte helfen? Danke! MfG Bosch
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.