Hi Leute, ich habe mal eine Frage zu Externen Interrupts.. Gibt es irgendwie irgendeine Möglichkeit,dass wenn ich mich zu lange im externen Interrupt befinde,er automatisch den Interrupt nach einer bestimmten Zeit verlässt? Als alternative Lösung für mein Problem wäre,die Priorität meines externen Interrupts niedriger zu stellen,so das der Timer-Interrupt höher liegt.. ist aber,wie ich denke,nicht möglich oder?? Bedanke mich im Voraus!
Laß doch die ISR durch einen anderen Interrupt interruptieren, wenn es nötig ist??
Falsches Design. Interrupts sind so kurz wie möglich und werden so früh wie möglich verlassen Die eigentliche Verarbeitung findet im Hauptprogramm statt. Dem widerspricht, das Du in der ISR bleibst und dort irgendwas machst, das unerwünscht solange dauern kann, das Du es mit Gewalt unterbrechen musst. Beschreibe mal Dein Vorhaben. Dann könnten wir Dir grob ein Design beschreiben, das passender ist.
Dieter Glockenbach schrieb: > Als alternative Lösung für mein Problem wäre,die Priorität meines > externen Interrupts niedriger zu stellen,so das der Timer-Interrupt > höher liegt.. ist aber,wie ich denke,nicht möglich oder?? Warum nicht? Das einzige, was mir zum Thema "lang dauernder externer Interrupt" einfällt: Ich brauchte das mal zum Software-Single-Step an einem 8051. Sonst braucht man sowas gar nicht.
@ Dieter Glockenbach (krnfxd) >Gibt es irgendwie irgendeine Möglichkeit,dass wenn ich mich zu lange im >externen Interrupt befinde,er automatisch den Interrupt nach einer >bestimmten Zeit verlässt? Ja, mit dem richtigen Programmieransatz ala statemachine und Multitasking.
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.