embedded-software
reusable software modules for embedded systems
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Hardware Abstraction Layer General Fucntions
Collaboration diagram for Hardware Abstraction Layer General Fucntions:

Functions

void Nop (void)
 No oporation. More...
 
void DisableInterrupts (void)
 Disable global interrupts. More...
 
void EnableInterrupts (void)
 Configure and enable global interrupts. More...
 
void BlockInterrupts (void)
 Backup the interrupt status (i.e. IPL) and block interrupts. More...
 
void RestoreInterrupts (void)
 RestoreInterrupts after blocking interrupts (BlockInterrupts()) More...
 

Detailed Description

The hal_general.h file is processor specific and should be located in each processors directory within hal / processor family.

Each of the following function prototypes are typically implemented with macros are not actual functions.

Function Documentation

void BlockInterrupts ( void  )

Backup the interrupt status (i.e. IPL) and block interrupts.

A interrupt safe method to block interrupts and restore to the appropriate state using the matching RestoreInterrupts function.

Here is the caller graph for this function:

void DisableInterrupts ( void  )

Disable global interrupts.

Disable global interrupts. This can destroy the interrupt status of the CPU and should never be called from an interrupt.

Here is the caller graph for this function:

void EnableInterrupts ( void  )

Configure and enable global interrupts.

Configures multi vectored interrupts where available. Will not restore the interrupt level. See BlockInterrupts() and RestoreInterrupts()

Here is the caller graph for this function:

void Nop ( void  )

No oporation.

Note: this may already be implemented for some microcontrollers (i.e. PIC).

Here is the caller graph for this function:

void RestoreInterrupts ( void  )

RestoreInterrupts after blocking interrupts (BlockInterrupts())

Restores the interrupt status that was backed up by BlockInterrupts() and enables interrupts.

Warning
RestoreInterrupts() can only be called when BlockInterrupts() was called earlier in the same context (function).

Here is the caller graph for this function: