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!
Gast
#2972255
Laß doch die ISR durch einen anderen Interrupt interruptieren, wenn es nötig ist??
Gast
#2972258
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.
Gast
#2972259
Welcher Prozessor? Was hast du genau vor / was ist das Problem?
Gast
#2972261
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.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.