Version 2.0.0-0

irq Reference

File
core/xeos/include/xeos/irq.h
Date
Wednesday, June 25, 2014
Includes

Tasks

XEOS_IRQ_AddIRQHandler Top

Installs a handler function for an IRQ line

bool XEOS_IRQ_AddIRQHandler( XEOS_HAL_PIC_IRQ irq, XEOS_IRQ_IRQHandler handler );

Discussion

Note that the number of handlers for an IRQ line is limited. If the maximum number of handlers is reached, the handler won't be installed and the function will return false.

Parameters
  • irq
    The IRQ line
  • handler
    The IRQ handler function
Return value

True if the handler was installed, otherwise false

XEOS_IRQ_ExecuteIRQHandlers Top

Executes all installed handlers for an IRQ line

void XEOS_IRQ_ExecuteIRQHandlers( XEOS_HAL_PIC_IRQ irq, XEOS_HAL_CPU_Registers *registers );

Parameters
  • irq
    The IRQ line
  • registers
    The processor registers

XEOS_IRQ_Keyboard Top

IRQ handler for the keyboard (IRQ1)

void XEOS_IRQ_Keyboard( XEOS_HAL_PIC_IRQ irq, XEOS_HAL_CPU_Registers *registers );

Parameters
  • irq
    The IRQ line
  • registers
    The processor registers

XEOS_IRQ_RealTimeClock Top

IRQ handler for the real time clock (IRQ8)

void XEOS_IRQ_RealTimeClock( XEOS_HAL_PIC_IRQ irq, XEOS_HAL_CPU_Registers *registers );

Parameters
  • irq
    The IRQ line
  • registers
    The processor registers

XEOS_IRQ_RemoveIRQHandler Top

Removes a handler function for an IRQ line

void XEOS_IRQ_RemoveIRQHandler( XEOS_HAL_PIC_IRQ irq, XEOS_IRQ_IRQHandler handler );

Parameters
  • irq
    The IRQ line
  • handler
    The IRQ handler function

XEOS_IRQ_SystemTimer Top

IRQ handler for the system timer (IRQ0)

void XEOS_IRQ_SystemTimer( XEOS_HAL_PIC_IRQ irq, XEOS_HAL_CPU_Registers *registers );

Parameters
  • irq
    The IRQ line
  • registers
    The processor registers

Types

XEOS_IRQ_IRQHandler Top

Handler function for an IRQ

typedef void ( *XEOS_IRQ_IRQHandler )( XEOS_HAL_PIC_IRQ irq, XEOS_HAL_CPU_Registers *registers );

Parameters
  • irq
    The IRQ line
  • registers
    The processor registers

Macros

__XEOS_IRQ_H__ Top

#define __XEOS_IRQ_H__