OS_SetIrqFunction


C Specification

#include <nitro/os.h>

void OS_SetIrqFunction( 
            OS_IrqMask      intrBit , 
            OS_IrqFunction  function );

Description

Sets the interrupt handler

Sets the functions (interrupt handler) that jump when the designated IRQ interrupt occurs. In intrBit, the IRQ interrupt cause that sets the handler gets designated. In function, the handler gets designated.

For details about the IRQ interrupt cause, refer to OS_SetIrqMask().

The interrupt handler is in the form of OS_IrqFunction. This is a void function, without arguments.

(Example)
main()
    {
    :
        OS_InitIrqTable();
        OS_SetIrqFunction( 
                OS_IE_V_BLANK , 
                vhandler );
    :
    }

    void vhandler( void )
    {
    // V-Blank interrupt process
    }

Caution

You need to be cautious about timer interrupts. Based on the hardware timer specifications, timer interrupts are configured dynamically. However, with the OS, the settings are released when the first interrupt occurs so only that first timer interrupt takes place. In order to perform repeated timer interrupts, processing to configure settings need to be done again in the interrupt handler.

Arguments

intrBit The IRQ interrupt cause to be enabled (expressed as a logical sum)
function The interrupt handler

Return Values

None

See Also

OS_SetIrqMask, OS_InitIrqTable, OS_GetIrqFunction

Revision History

06/03/2004 Added caution about timer interrupts. 12/01/2003 Initial version