This repo contains the libraries of Mbed for LPC1549 with following changes: - IAP commands. - EEPROM write and read. - UART write and read (public) - CAN can_s -> LPC_C_CAN0_Type *can
InterruptManager Class Reference
Use this singleton if you need to chain interrupt handlers. More...
#include <InterruptManager.h>
Public Member Functions | |
pFunctionPointer_t | add_handler (void(*function)(void), IRQn_Type irq) |
Add a handler for an interrupt at the end of the handler list. | |
pFunctionPointer_t | add_handler_front (void(*function)(void), IRQn_Type irq) |
Add a handler for an interrupt at the beginning of the handler list. | |
template<typename T > | |
pFunctionPointer_t | add_handler (T *tptr, void(T::*mptr)(void), IRQn_Type irq) |
Add a handler for an interrupt at the end of the handler list. | |
template<typename T > | |
pFunctionPointer_t | add_handler_front (T *tptr, void(T::*mptr)(void), IRQn_Type irq) |
Add a handler for an interrupt at the beginning of the handler list. | |
bool | remove_handler (pFunctionPointer_t handler, IRQn_Type irq) |
Remove a handler from an interrupt. | |
Static Public Member Functions | |
static InterruptManager * | get () |
Return the only instance of this class. | |
static void | destroy () |
Destroy the current instance of the interrupt manager. |
Detailed Description
Use this singleton if you need to chain interrupt handlers.
Example (for LPC1768):
#include "InterruptManager.h" #include "mbed.h" Ticker flipper; DigitalOut led1(LED1); DigitalOut led2(LED2); void flip(void) { led1 = !led1; } void handler(void) { led2 = !led1; } int main() { led1 = led2 = 0; flipper.attach(&flip, 1.0); InterruptManager::get()->add_handler(handler, TIMER3_IRQn); }
Definition at line 36 of file InterruptManager.h.
Member Function Documentation
pFunctionPointer_t add_handler | ( | void(*)(void) | function, |
IRQn_Type | irq | ||
) |
Add a handler for an interrupt at the end of the handler list.
- Parameters:
-
function the handler to add irq interrupt number
- Returns:
- The function object created for 'function'
Definition at line 54 of file InterruptManager.h.
pFunctionPointer_t add_handler | ( | T * | tptr, |
void(T::*)(void) | mptr, | ||
IRQn_Type | irq | ||
) |
Add a handler for an interrupt at the end of the handler list.
- Parameters:
-
tptr pointer to the object that has the handler function mptr pointer to the actual handler function irq interrupt number
- Returns:
- The function object created for 'tptr' and 'mptr'
Definition at line 80 of file InterruptManager.h.
pFunctionPointer_t add_handler_front | ( | void(*)(void) | function, |
IRQn_Type | irq | ||
) |
Add a handler for an interrupt at the beginning of the handler list.
- Parameters:
-
function the handler to add irq interrupt number
- Returns:
- The function object created for 'function'
Definition at line 66 of file InterruptManager.h.
pFunctionPointer_t add_handler_front | ( | T * | tptr, |
void(T::*)(void) | mptr, | ||
IRQn_Type | irq | ||
) |
Add a handler for an interrupt at the beginning of the handler list.
- Parameters:
-
tptr pointer to the object that has the handler function mptr pointer to the actual handler function irq interrupt number
- Returns:
- The function object created for 'tptr' and 'mptr'
Definition at line 94 of file InterruptManager.h.
static void destroy | ( | ) | [static] |
Destroy the current instance of the interrupt manager.
static InterruptManager* get | ( | ) | [static] |
Return the only instance of this class.
bool remove_handler | ( | pFunctionPointer_t | handler, |
IRQn_Type | irq | ||
) |
Remove a handler from an interrupt.
- Parameters:
-
handler the function object for the handler to remove irq the interrupt number
- Returns:
- true if the handler was found and removed, false otherwise
Generated on Wed Jul 13 2022 17:09:46 by 1.7.2