#include <nitro/os.h>void OS_WaitIrq( BOOL clear, OSIrqMask irqFlags );| clear | Indicates whether or not check flags should be cleared. |
| irqFlags | The mask value of the interrupt generation for which the function is waiting. You can specify more than one by using a logical sum. |
None.
Waits for the generation of a specified IRQ interrupt source In irqFlags you can specify multiple interrupt sources by logical OR-ing the mask values. Generation of any of the interrupts included here will cause a return from the function.
A check flag can be set after an IRQ interrupt is generated it indicate that interrupt. To set this flag, the user must explicitly call OS_SetIrqCheckFlag from the interrupt handler.
If you set clear to TRUE, before waiting, this resets interrupt flags that are specified by irqFlags from amongst the interrupt check flags. If a relevant check flag has been preset, and there are no flags to reset, return from the function will be immediate.
The difference between OS_WaitInterrupt() and OS_WaitIrq() is this: While OS_WaitInterrupt() is waiting for an interrupt, it it uses OS_Halt() to stop. While OS_WaitIrq() is waiting for an interrupt, it switches processing to another thread. It restarts operation after an interrupt is generated. If no threads are used, both functions behave the same.
OS_SetIrqCheckFlag(), OS_WaitInterrupt
03/08/2005 Standardized the Japanese term for "interrupt"
05/24/2004 Clarified the differences fromOS_WaitInterrupt()
05/01/2004 Initial version
CONFIDENTIAL