irq.h File Reference

The header file describes the IRQ interface. More...

#include <types.h>

Go to the source code of this file.

Enumerations

enum  HAL_IrqNumber_t {
  IRQ_0 = 0, IRQ_1 = 1, IRQ_2 = 2, IRQ_3 = 3,
  IRQ_4 = 4, IRQ_5 = 5, IRQ_6 = 6, IRQ_7 = 7
}
 numbers of possible interrupt. More...
enum  HAL_IrqMode_t {
  IRQ_LOW_LEVEL, IRQ_HIGH_LEVEL, IRQ_ANY_EDGE, IRQ_FALLING_EDGE,
  IRQ_RISING_EDGE
}
 interrupt activation condition. More...

Functions

int HAL_RegisterIrq (HAL_IrqNumber_t irqNumber, HAL_IrqMode_t irqMode, void(*f)(void))
 Registers the user's irqNumber external interrupt.
int HAL_EnableIrq (HAL_IrqNumber_t irqNumber)
int HAL_DisableIrq (HAL_IrqNumber_t irqNumber)
int HAL_UnregisterIrq (HAL_IrqNumber_t irqNumber)


Detailed Description

The header file describes the IRQ interface.

Author:
Atmel Corporation: http://www.atmel.com
Support email: avr@atmel.com
Copyright (c) 2008 , Atmel Corporation. All rights reserved. Licensed under Atmel's Limited License Agreement (BitCloudTM).

Definition in file irq.h.


Enumeration Type Documentation

enum HAL_IrqNumber_t

numbers of possible interrupt.

Enumerator:
IRQ_0  number of valid interrupt for arm.
IRQ_1  number of valid interrupt for arm.
IRQ_2 
IRQ_3 
IRQ_4 
IRQ_5 
IRQ_6  number of valid interrupt for avr.
IRQ_7  number of valid interrupt for avr.

Definition at line 30 of file irq.h.

enum HAL_IrqMode_t

interrupt activation condition.

Enumerator:
IRQ_LOW_LEVEL  The low level generates an interrupt request.
IRQ_HIGH_LEVEL  The high level generates an interrupt request (valid only for arm).
IRQ_ANY_EDGE  Any edge generates an interrupt request (valid only for avr).
IRQ_FALLING_EDGE  Falling edge generates an interrupt request.
IRQ_RISING_EDGE  Rising edge generates an interrupt request.

Definition at line 47 of file irq.h.


Function Documentation

int HAL_RegisterIrq ( HAL_IrqNumber_t  irqNumber,
HAL_IrqMode_t  irqMode,
void(*)(void)  f 
)

Registers the user's irqNumber external interrupt.

Parameters:
[in] irqNumber - IRQ number. Must be chosen from:
IRQ_0 (for arm)
IRQ_1 (for arm)
IRQ_6 (for avr)
IRQ_7 (for avr)
[in] irqMode - Controls the sort of interrupt. Must be chosen from:
IRQ_LOW_LEVEL // The low level generates an interrupt request.
IRQ_HIGH_LEVEL // The high level generates an interrupt request (valid only for arm).
IRQ_ANY_EDGE // Any edge generates an interrupt request (valid only for avr).
IRQ_FALLING_EDGE // Falling edge generates an interrupt request.
IRQ_RISING_EDGE // Rising edge generates an interrupt request.
[in] f - user's interrupt handler. Handler must be executed less than 100 us.
Returns:
-1 - if irqNumber is out of range,
not valid irq mode,
such interrupt has been already registered.
0 - otherwise.

int HAL_EnableIrq ( HAL_IrqNumber_t  irqNumber  ) 

int HAL_DisableIrq ( HAL_IrqNumber_t  irqNumber  ) 

int HAL_UnregisterIrq ( HAL_IrqNumber_t  irqNumber  ) 


Generated on Mon Feb 16 17:53:40 2009 for BitCloud Stack Documentation by  doxygen 1.5.1-p1