![]() |
LPCOpen Platform
LPCOpen Platform for NXP LPC Microcontrollers
|
Data Structures | |
struct | ipcex_msg_t |
Macros | |
#define | IPCEX_QUEUE_SZ 64 |
#define | IPCEX_MAX_IDS 20 |
#define | IPCEX_ID_BLINKY 1 |
#define | IPCEX_ID_USBHOST 2 |
#define | IPCEX_ID_USBDEVICE 3 |
#define | IPCEX_ID_LWIP 4 |
#define | IPCEX_ID_EMWIN 5 |
#define | IPCEX_ID_USER1 10 |
#define | IPCEX_ID_USER2 11 |
Functions | |
int | ipcex_register_callback (uint32_t id, void(*func)(uint32_t)) |
IPC register callback function pointer. | |
int | ipcex_msgPush (uint32_t id, uint32_t data) |
Push data on the queue. | |
static void(* | ipcex_callback_lookup [IPCEX_MAX_IDS])(uint32_t) |
static ipcex_msg_t | ipcex_queue [IPCEX_QUEUE_SZ] |
static void | ipcex_dispatch_task (void *loop) |
void | ipcex_tasks (void) |
Dual Core IPC example implementation task. | |
void | IPCEX_Init (void) |
IPC Example initialization. | |
Build procedure: LPCOpen 18xx/43xx build instructions
Submit bug reports for LPCOpen code here.
#define IPCEX_ID_BLINKY 1 |
IPC ID used by BLINKY example
Definition at line 63 of file ipc_example.h.
#define IPCEX_ID_EMWIN 5 |
IPC ID used by EMWIN example
Definition at line 67 of file ipc_example.h.
#define IPCEX_ID_LWIP 4 |
IPC ID used by LWIP example
Definition at line 66 of file ipc_example.h.
#define IPCEX_ID_USBDEVICE 3 |
IPC ID used by USB Device example
Definition at line 65 of file ipc_example.h.
#define IPCEX_ID_USBHOST 2 |
IPC ID used by USB HOST example
Definition at line 64 of file ipc_example.h.
#define IPCEX_ID_USER1 10 |
IPC ID that can be used by other user examples
Definition at line 68 of file ipc_example.h.
#define IPCEX_ID_USER2 11 |
IPC ID that can be used by other user examples
Definition at line 69 of file ipc_example.h.
#define IPCEX_MAX_IDS 20 |
Maximum number of message IDs that this IPC examples uses
Definition at line 61 of file ipc_example.h.
#define IPCEX_QUEUE_SZ 64 |
Size of the IPC Queue used by this example implimentation, the current implementation uses same queue size for both M0 and M4, application developer can override it.
Definition at line 55 of file ipc_example.h.
|
static |
Definition at line 69 of file ipc_example.c.
void IPCEX_Init | ( | void | ) |
IPC Example initialization.
This function initializes the IPC Example implementation. It calls IPC_initMsgQueue() to initialize the IPC queue of the calling core, by allocating and passing a queue array. It will be called by the main() of both core-M0 and core-M4 code for all the dual core examples.
Definition at line 140 of file ipc_example.c.
Push data on the queue.
id | : Task ID of the destination task |
data | : Data containing the message |
Definition at line 146 of file ipc_example.c.
IPC register callback function pointer.
This function registers a callback function pointer to a message id, whenever a message with id is received the register call-back function will be invoked.
id | : ID of message to which the callback func be associated |
func | : pointer to callback function |
Definition at line 93 of file ipc_example.c.
void ipcex_tasks | ( | void | ) |
Dual Core IPC example implementation task.
This task receives the message from the other core and will call-back the function (if registered via ipcex_register_callback()) corresponding to the received message. This function is called by main().
Definition at line 104 of file ipc_example.c.
|
static |
Definition at line 53 of file ipc_example.c.
|
static |
Definition at line 56 of file ipc_example.c.