Hallo, hoffe ihr könnt mir helfen. Ich möchte mit einer Taste einen Timer starten, welcher verschiedene festgelegte Zeiten läuft. Wenn der Taster gedrückt wird, wird sein Interrupt augelöst. In dem entsprechenden Interrupthandler wird dann der Timer gestartet. Dabei läuft dieser immmer bis zu einem vorher übergebenen Wert, welcher in das CCR0-Register eingetragen wurde. Um zu erfahren wann der Timer beim CCR0-Wert angekommen ist, wird ebenfalls ein Interrupt ausgelöst. Das Problem ist jetzt, dass in einer Interrupt-Routine eine Funktion aufgerufen wird (Timer) welche einen weiteren Interrupt auslöst. So funktioniert es leider nicht einwandfrei. Habt ihr ne Lösung/Idee/Tipp? Vielen Dank, gruß Stefan Der Code liegt im Anhang
Seit wann heißen Quelltexte *.PDF ???? Wenn Du Hilfe willst, schicke ein compilierbares *.c. Peter
Stefan schrieb: > Das Problem ist jetzt, dass in einer Interrupt-Routine eine Funktion > aufgerufen wird (Timer) welche einen weiteren Interrupt auslöst. Und wo ist das Problem? TimerA_init() hat doch überhaupt keine Delays o.ä. drin. D.h. der Port Interrupt wird beendet und irgendwann kommt der Timer Interrupt. Und selbst wenn der Timer Interrupt sofort kommt, wird er erst nach dem (und nicht im) Port Interrupt aufgerufen.
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.