MSP430 ISR unterbrechen

Gast #353740
Lesenswert?

Hallo zusammen,
ich habe folgendes Problem Eine TRIGGER_ISR ladet einen Timer, welcher
dann in einer TIMER_ISR ein Bit toggelt. Nur es kann passieren dass die
TRIGGER_ISR und die TIMER_ISR fast gleichzeitig ausgelösst werden, wenn
die TIMER_ISR die "erste" ist ist das kein Problem, allerdings wenn
die TRIGGER_ISR zuerst ausgeführt wird verschiebt sich der TIMER_ISR um
die Runtime der TRIGGER_ISR. Kann ich irgendwie dem MSP sagen er darf
die TRIGGER_ISR unterbrechen? um dann die TIMER_ISR zu starten?

gruss Thomas
Gast #353742
Lesenswert?

> Kann ich irgendwie dem MSP sagen er darf die TRIGGER_ISR
> unterbrechen? um dann die TIMER_ISR zu starten?

Das GIE-Flag in der Trigger-ISR wieder einschalten (_EINT() beim
IAR-Compiler bzw. bis #GIE, sr)
Gast #353743
Lesenswert?

Super, danke funktoiniert,

ich habe zuerst vergessen das Interruptflag 0 zu setzten, und habe die
globelen Interrupts vorher wieder eingeschalten.

Gibt es eigentlich eine möglichkeit nur eine art (timer) interrupt in
er anderen ISR zuzulassen, ich habe es jetzt so gemacht, dass ich alle
anderen interrupts deaktiviere und dann dien globalen setzte, das
dürfte die einzige köglichkeit sein oder?

gruss Thomas

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren