...
Description
OSIntExit()
notifies µC/OS-III that an ISR is complete. This allows µC/OS-III to keep track of interrupt nesting. OSIntExit()
is is used in conjunction with with OSIntEnter()
. When the last nested interrupt completes, OSIntExit()
determines determines if a higher priority task is ready-to-run. If so, the interrupt returns to the higher priority task instead of the interrupted task.
Anchor
...
rowspan | 9 |
---|
...
Code Block |
---|
MyISR:
Save CPU registers;
OSIntEnter();
:
Process ISR;
:
OSIntExit();
Restore CPU registers;
Return from interrupt; |
Files
os.h/os_core.c
Prototype
Code Block |
---|
void OSIntExit (void) |
Arguments
None
Returned Value
None
Required Configuration
None
Callers
ISRs only.
Notes/Warnings
- This function must not be called by task-level code. Also, if you decide to directly increment
OSIntNestingCtr
, instead of callingOSIntEnter()
, you must still callOSIntExit()
.