nrfx 2.5
Enumerations | Functions
IPC HAL

Hardware access layer for managing the Interprocessor Communication (IPC) peripheral. More...

Enumerations

enum  nrf_ipc_task_t {
  NRF_IPC_TASK_SEND_0 = offsetof(NRF_IPC_Type, TASKS_SEND[0]),
  NRF_IPC_TASK_SEND_1 = offsetof(NRF_IPC_Type, TASKS_SEND[1]),
  NRF_IPC_TASK_SEND_2 = offsetof(NRF_IPC_Type, TASKS_SEND[2]),
  NRF_IPC_TASK_SEND_3 = offsetof(NRF_IPC_Type, TASKS_SEND[3]),
  NRF_IPC_TASK_SEND_4 = offsetof(NRF_IPC_Type, TASKS_SEND[4]),
  NRF_IPC_TASK_SEND_5 = offsetof(NRF_IPC_Type, TASKS_SEND[5]),
  NRF_IPC_TASK_SEND_6 = offsetof(NRF_IPC_Type, TASKS_SEND[6]),
  NRF_IPC_TASK_SEND_7 = offsetof(NRF_IPC_Type, TASKS_SEND[7]),
  NRF_IPC_TASK_SEND_8 = offsetof(NRF_IPC_Type, TASKS_SEND[8]),
  NRF_IPC_TASK_SEND_9 = offsetof(NRF_IPC_Type, TASKS_SEND[9]),
  NRF_IPC_TASK_SEND_10 = offsetof(NRF_IPC_Type, TASKS_SEND[10]),
  NRF_IPC_TASK_SEND_11 = offsetof(NRF_IPC_Type, TASKS_SEND[11]),
  NRF_IPC_TASK_SEND_12 = offsetof(NRF_IPC_Type, TASKS_SEND[12]),
  NRF_IPC_TASK_SEND_13 = offsetof(NRF_IPC_Type, TASKS_SEND[13]),
  NRF_IPC_TASK_SEND_14 = offsetof(NRF_IPC_Type, TASKS_SEND[14]),
  NRF_IPC_TASK_SEND_15 = offsetof(NRF_IPC_Type, TASKS_SEND[15])
}
 IPC tasks. More...
 
enum  nrf_ipc_event_t {
  NRF_IPC_EVENT_RECEIVE_0 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[0]),
  NRF_IPC_EVENT_RECEIVE_1 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[1]),
  NRF_IPC_EVENT_RECEIVE_2 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[2]),
  NRF_IPC_EVENT_RECEIVE_3 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[3]),
  NRF_IPC_EVENT_RECEIVE_4 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[4]),
  NRF_IPC_EVENT_RECEIVE_5 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[5]),
  NRF_IPC_EVENT_RECEIVE_6 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[6]),
  NRF_IPC_EVENT_RECEIVE_7 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[7]),
  NRF_IPC_EVENT_RECEIVE_8 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[8]),
  NRF_IPC_EVENT_RECEIVE_9 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[9]),
  NRF_IPC_EVENT_RECEIVE_10 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[10]),
  NRF_IPC_EVENT_RECEIVE_11 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[11]),
  NRF_IPC_EVENT_RECEIVE_12 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[12]),
  NRF_IPC_EVENT_RECEIVE_13 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[13]),
  NRF_IPC_EVENT_RECEIVE_14 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[14]),
  NRF_IPC_EVENT_RECEIVE_15 = offsetof(NRF_IPC_Type, EVENTS_RECEIVE[15])
}
 IPC events. More...
 
enum  nrf_ipc_channel_t {
  NRF_IPC_CHANNEL_0 = IPC_RECEIVE_CNF_CHEN0_Msk,
  NRF_IPC_CHANNEL_1 = IPC_RECEIVE_CNF_CHEN1_Msk,
  NRF_IPC_CHANNEL_2 = IPC_RECEIVE_CNF_CHEN2_Msk,
  NRF_IPC_CHANNEL_3 = IPC_RECEIVE_CNF_CHEN3_Msk,
  NRF_IPC_CHANNEL_4 = IPC_RECEIVE_CNF_CHEN4_Msk,
  NRF_IPC_CHANNEL_5 = IPC_RECEIVE_CNF_CHEN5_Msk,
  NRF_IPC_CHANNEL_6 = IPC_RECEIVE_CNF_CHEN6_Msk,
  NRF_IPC_CHANNEL_7 = IPC_RECEIVE_CNF_CHEN7_Msk,
  NRF_IPC_CHANNEL_8 = IPC_RECEIVE_CNF_CHEN8_Msk,
  NRF_IPC_CHANNEL_9 = IPC_RECEIVE_CNF_CHEN9_Msk,
  NRF_IPC_CHANNEL_10 = IPC_RECEIVE_CNF_CHEN10_Msk,
  NRF_IPC_CHANNEL_11 = IPC_RECEIVE_CNF_CHEN11_Msk,
  NRF_IPC_CHANNEL_12 = IPC_RECEIVE_CNF_CHEN12_Msk,
  NRF_IPC_CHANNEL_13 = IPC_RECEIVE_CNF_CHEN13_Msk,
  NRF_IPC_CHANNEL_14 = IPC_RECEIVE_CNF_CHEN14_Msk,
  NRF_IPC_CHANNEL_15 = IPC_RECEIVE_CNF_CHEN15_Msk
}
 IPC channel positions. More...
 
enum  nrf_ipc_int_mask_t {
  NRF_IPC_INT_RECEIVE_0 = IPC_INTEN_RECEIVE0_Msk,
  NRF_IPC_INT_RECEIVE_1 = IPC_INTEN_RECEIVE1_Msk,
  NRF_IPC_INT_RECEIVE_2 = IPC_INTEN_RECEIVE2_Msk,
  NRF_IPC_INT_RECEIVE_3 = IPC_INTEN_RECEIVE3_Msk,
  NRF_IPC_INT_RECEIVE_4 = IPC_INTEN_RECEIVE4_Msk,
  NRF_IPC_INT_RECEIVE_5 = IPC_INTEN_RECEIVE5_Msk,
  NRF_IPC_INT_RECEIVE_6 = IPC_INTEN_RECEIVE6_Msk,
  NRF_IPC_INT_RECEIVE_7 = IPC_INTEN_RECEIVE7_Msk,
  NRF_IPC_INT_RECEIVE_8 = IPC_INTEN_RECEIVE8_Msk,
  NRF_IPC_INT_RECEIVE_9 = IPC_INTEN_RECEIVE9_Msk,
  NRF_IPC_INT_RECEIVE_10 = IPC_INTEN_RECEIVE10_Msk,
  NRF_IPC_INT_RECEIVE_11 = IPC_INTEN_RECEIVE11_Msk,
  NRF_IPC_INT_RECEIVE_12 = IPC_INTEN_RECEIVE12_Msk,
  NRF_IPC_INT_RECEIVE_13 = IPC_INTEN_RECEIVE13_Msk,
  NRF_IPC_INT_RECEIVE_14 = IPC_INTEN_RECEIVE14_Msk,
  NRF_IPC_INT_RECEIVE_15 = IPC_INTEN_RECEIVE15_Msk
}
 IPC interrupts. More...
 

Functions

NRF_STATIC_INLINE void nrf_ipc_task_trigger (NRF_IPC_Type *p_reg, nrf_ipc_task_t task)
 Function for triggering the specified IPC task. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_task_address_get (NRF_IPC_Type const *p_reg, nrf_ipc_task_t task)
 Function for getting the address of the specified IPC task register. More...
 
NRF_STATIC_INLINE void nrf_ipc_event_clear (NRF_IPC_Type *p_reg, nrf_ipc_event_t event)
 Function for clearing the specified IPC event. More...
 
NRF_STATIC_INLINE bool nrf_ipc_event_check (NRF_IPC_Type const *p_reg, nrf_ipc_event_t event)
 Function for retrieving the state of the IPC event. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_event_address_get (NRF_IPC_Type const *p_reg, nrf_ipc_event_t event)
 Function for getting the address of the specified IPC event register. More...
 
NRF_STATIC_INLINE void nrf_ipc_int_enable (NRF_IPC_Type *p_reg, uint32_t mask)
 Function for enabling specified interrupts. More...
 
NRF_STATIC_INLINE void nrf_ipc_int_disable (NRF_IPC_Type *p_reg, uint32_t mask)
 Function for disabling specified interrupts. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_int_enable_check (NRF_IPC_Type const *p_reg, uint32_t mask)
 Function for checking if the specified interrupts are enabled. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_int_pending_get (NRF_IPC_Type const *p_reg)
 Function for retrieving the state of pending interrupts of the receive event. More...
 
NRF_STATIC_INLINE void nrf_ipc_subscribe_set (NRF_IPC_Type *p_reg, nrf_ipc_task_t task, uint8_t channel)
 Function for setting the DPPI subscribe configuration for a given IPC task. More...
 
NRF_STATIC_INLINE void nrf_ipc_subscribe_clear (NRF_IPC_Type *p_reg, nrf_ipc_task_t task)
 Function for clearing the DPPI subscribe configuration for a given IPC task. More...
 
NRF_STATIC_INLINE void nrf_ipc_publish_set (NRF_IPC_Type *p_reg, nrf_ipc_event_t event, uint8_t channel)
 Function for setting the DPPI publish configuration for a given IPC event. More...
 
NRF_STATIC_INLINE void nrf_ipc_publish_clear (NRF_IPC_Type *p_reg, nrf_ipc_event_t event)
 Function for clearing the DPPI publish configuration for a given IPC event. More...
 
NRF_STATIC_INLINE void nrf_ipc_send_config_set (NRF_IPC_Type *p_reg, uint8_t index, uint32_t channels_mask)
 Function for setting the configuration of the specified send task. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_send_config_get (NRF_IPC_Type *const p_reg, uint8_t index)
 Function for getting the configuration of the specified send task. More...
 
NRF_STATIC_INLINE void nrf_ipc_receive_config_set (NRF_IPC_Type *p_reg, uint8_t index, uint32_t channels_mask)
 Function for assigning receive event to the IPC channels. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_receive_config_get (NRF_IPC_Type *const p_reg, uint8_t index)
 Function for getting receive event configuration. More...
 
NRF_STATIC_INLINE void nrf_ipc_gpmem_set (NRF_IPC_Type *p_reg, uint8_t index, uint32_t data)
 Function for storing data in general purpose memory cell. More...
 
NRF_STATIC_INLINE uint32_t nrf_ipc_gpmem_get (NRF_IPC_Type const *p_reg, uint8_t index)
 Function for getting value of the general purpose memory cell. More...
 
NRF_STATIC_INLINE nrf_ipc_task_t nrf_ipc_send_task_get (uint8_t index)
 Function for getting SEND task by its index. More...
 
NRF_STATIC_INLINE nrf_ipc_event_t nrf_ipc_receive_event_get (uint8_t index)
 Function for getting RECEIVE event by its index. More...
 

Detailed Description

Hardware access layer for managing the Interprocessor Communication (IPC) peripheral.

Enumeration Type Documentation

◆ nrf_ipc_channel_t

IPC channel positions.

Enumerator
NRF_IPC_CHANNEL_0 

Bitmask position for IPC channel 0.

NRF_IPC_CHANNEL_1 

Bitmask position for IPC channel 1.

NRF_IPC_CHANNEL_2 

Bitmask position for IPC channel 2.

NRF_IPC_CHANNEL_3 

Bitmask position for IPC channel 3.

NRF_IPC_CHANNEL_4 

Bitmask position for IPC channel 4.

NRF_IPC_CHANNEL_5 

Bitmask position for IPC channel 5.

NRF_IPC_CHANNEL_6 

Bitmask position for IPC channel 6.

NRF_IPC_CHANNEL_7 

Bitmask position for IPC channel 7.

NRF_IPC_CHANNEL_8 

Bitmask position for IPC channel 8.

NRF_IPC_CHANNEL_9 

Bitmask position for IPC channel 9.

NRF_IPC_CHANNEL_10 

Bitmask position for IPC channel 10.

NRF_IPC_CHANNEL_11 

Bitmask position for IPC channel 11.

NRF_IPC_CHANNEL_12 

Bitmask position for IPC channel 12.

NRF_IPC_CHANNEL_13 

Bitmask position for IPC channel 13.

NRF_IPC_CHANNEL_14 

Bitmask position for IPC channel 14.

NRF_IPC_CHANNEL_15 

Bitmask position for IPC channel 15.

◆ nrf_ipc_event_t

IPC events.

Enumerator
NRF_IPC_EVENT_RECEIVE_0 

Event received on the IPC channels enabled in RECEIVE_CNF[0] register.

NRF_IPC_EVENT_RECEIVE_1 

Event received on the IPC channels enabled in RECEIVE_CNF[1] register.

NRF_IPC_EVENT_RECEIVE_2 

Event received on the IPC channels enabled in RECEIVE_CNF[2] register.

NRF_IPC_EVENT_RECEIVE_3 

Event received on the IPC channels enabled in RECEIVE_CNF[3] register.

NRF_IPC_EVENT_RECEIVE_4 

Event received on the IPC channels enabled in RECEIVE_CNF[4] register.

NRF_IPC_EVENT_RECEIVE_5 

Event received on the IPC channels enabled in RECEIVE_CNF[5] register.

NRF_IPC_EVENT_RECEIVE_6 

Event received on the IPC channels enabled in RECEIVE_CNF[6] register.

NRF_IPC_EVENT_RECEIVE_7 

Event received on the IPC channels enabled in RECEIVE_CNF[7] register.

NRF_IPC_EVENT_RECEIVE_8 

Event received on the IPC channels enabled in RECEIVE_CNF[8] register.

NRF_IPC_EVENT_RECEIVE_9 

Event received on the IPC channels enabled in RECEIVE_CNF[9] register.

NRF_IPC_EVENT_RECEIVE_10 

Event received on the IPC channels enabled in RECEIVE_CNF[10] register.

NRF_IPC_EVENT_RECEIVE_11 

Event received on the IPC channels enabled in RECEIVE_CNF[11] register.

NRF_IPC_EVENT_RECEIVE_12 

Event received on the IPC channels enabled in RECEIVE_CNF[12] register.

NRF_IPC_EVENT_RECEIVE_13 

Event received on the IPC channels enabled in RECEIVE_CNF[13] register.

NRF_IPC_EVENT_RECEIVE_14 

Event received on the IPC channels enabled in RECEIVE_CNF[14] register.

NRF_IPC_EVENT_RECEIVE_15 

Event received on the IPC channels enabled in RECEIVE_CNF[15] register.

◆ nrf_ipc_int_mask_t

IPC interrupts.

Enumerator
NRF_IPC_INT_RECEIVE_0 

Interrupt on receive event 0.

NRF_IPC_INT_RECEIVE_1 

Interrupt on receive event 1.

NRF_IPC_INT_RECEIVE_2 

Interrupt on receive event 2.

NRF_IPC_INT_RECEIVE_3 

Interrupt on receive event 3.

NRF_IPC_INT_RECEIVE_4 

Interrupt on receive event 4.

NRF_IPC_INT_RECEIVE_5 

Interrupt on receive event 5.

NRF_IPC_INT_RECEIVE_6 

Interrupt on receive event 6.

NRF_IPC_INT_RECEIVE_7 

Interrupt on receive event 7.

NRF_IPC_INT_RECEIVE_8 

Interrupt on receive event 8.

NRF_IPC_INT_RECEIVE_9 

Interrupt on receive event 9.

NRF_IPC_INT_RECEIVE_10 

Interrupt on receive event 10.

NRF_IPC_INT_RECEIVE_11 

Interrupt on receive event 11.

NRF_IPC_INT_RECEIVE_12 

Interrupt on receive event 12.

NRF_IPC_INT_RECEIVE_13 

Interrupt on receive event 13.

NRF_IPC_INT_RECEIVE_14 

Interrupt on receive event 14.

NRF_IPC_INT_RECEIVE_15 

Interrupt on receive event 15.

◆ nrf_ipc_task_t

IPC tasks.

Enumerator
NRF_IPC_TASK_SEND_0 

Trigger events on channels enabled in SEND_CNF[0].

NRF_IPC_TASK_SEND_1 

Trigger events on channels enabled in SEND_CNF[1].

NRF_IPC_TASK_SEND_2 

Trigger events on channels enabled in SEND_CNF[2].

NRF_IPC_TASK_SEND_3 

Trigger events on channels enabled in SEND_CNF[3].

NRF_IPC_TASK_SEND_4 

Trigger events on channels enabled in SEND_CNF[4].

NRF_IPC_TASK_SEND_5 

Trigger events on channels enabled in SEND_CNF[5].

NRF_IPC_TASK_SEND_6 

Trigger events on channels enabled in SEND_CNF[6].

NRF_IPC_TASK_SEND_7 

Trigger events on channels enabled in SEND_CNF[7].

NRF_IPC_TASK_SEND_8 

Trigger events on channels enabled in SEND_CNF[8].

NRF_IPC_TASK_SEND_9 

Trigger events on channels enabled in SEND_CNF[9].

NRF_IPC_TASK_SEND_10 

Trigger events on channels enabled in SEND_CNF[10].

NRF_IPC_TASK_SEND_11 

Trigger events on channels enabled in SEND_CNF[11].

NRF_IPC_TASK_SEND_12 

Trigger events on channels enabled in SEND_CNF[12].

NRF_IPC_TASK_SEND_13 

Trigger events on channels enabled in SEND_CNF[13].

NRF_IPC_TASK_SEND_14 

Trigger events on channels enabled in SEND_CNF[14].

NRF_IPC_TASK_SEND_15 

Trigger events on channels enabled in SEND_CNF[15].

Function Documentation

◆ nrf_ipc_event_address_get()

NRF_STATIC_INLINE uint32_t nrf_ipc_event_address_get ( NRF_IPC_Type const *  p_reg,
nrf_ipc_event_t  event 
)

Function for getting the address of the specified IPC event register.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventSpecified event.
Returns
Address of the specified event register.

◆ nrf_ipc_event_check()

NRF_STATIC_INLINE bool nrf_ipc_event_check ( NRF_IPC_Type const *  p_reg,
nrf_ipc_event_t  event 
)

Function for retrieving the state of the IPC event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to be checked.
Return values
trueThe event has been generated.
falseThe event has not been generated.

◆ nrf_ipc_event_clear()

NRF_STATIC_INLINE void nrf_ipc_event_clear ( NRF_IPC_Type *  p_reg,
nrf_ipc_event_t  event 
)

Function for clearing the specified IPC event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to clear.

◆ nrf_ipc_gpmem_get()

NRF_STATIC_INLINE uint32_t nrf_ipc_gpmem_get ( NRF_IPC_Type const *  p_reg,
uint8_t  index 
)

Function for getting value of the general purpose memory cell.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of the general purpose memory cell.
Returns
Stored data.

◆ nrf_ipc_gpmem_set()

NRF_STATIC_INLINE void nrf_ipc_gpmem_set ( NRF_IPC_Type *  p_reg,
uint8_t  index,
uint32_t  data 
)

Function for storing data in general purpose memory cell.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of the general purpose memory cell.
[in]dataData to be stored.

◆ nrf_ipc_int_disable()

NRF_STATIC_INLINE void nrf_ipc_int_disable ( NRF_IPC_Type *  p_reg,
uint32_t  mask 
)

Function for disabling specified interrupts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be disabled.

◆ nrf_ipc_int_enable()

NRF_STATIC_INLINE void nrf_ipc_int_enable ( NRF_IPC_Type *  p_reg,
uint32_t  mask 
)

Function for enabling specified interrupts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be enabled.

◆ nrf_ipc_int_enable_check()

NRF_STATIC_INLINE uint32_t nrf_ipc_int_enable_check ( NRF_IPC_Type const *  p_reg,
uint32_t  mask 
)

Function for checking if the specified interrupts are enabled.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be checked.
Returns
Mask of enabled interrupts.

◆ nrf_ipc_int_pending_get()

NRF_STATIC_INLINE uint32_t nrf_ipc_int_pending_get ( NRF_IPC_Type const *  p_reg)

Function for retrieving the state of pending interrupts of the receive event.

States of pending interrupt are saved as a bitmask. First position corresponds with EVENTS_RECEIVE[0] event, second one with EVENTS_RECEIVE[1] etc. One set at particular position means that interrupt for event is pending.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Bitmask with information about pending interrupts of EVENTS_RECEIVE[n] events.

◆ nrf_ipc_publish_clear()

NRF_STATIC_INLINE void nrf_ipc_publish_clear ( NRF_IPC_Type *  p_reg,
nrf_ipc_event_t  event 
)

Function for clearing the DPPI publish configuration for a given IPC event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent for which to clear the configuration.

◆ nrf_ipc_publish_set()

NRF_STATIC_INLINE void nrf_ipc_publish_set ( NRF_IPC_Type *  p_reg,
nrf_ipc_event_t  event,
uint8_t  channel 
)

Function for setting the DPPI publish configuration for a given IPC event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent for which to set the configuration.
[in]channelDPPI channel through which to publish the event.

◆ nrf_ipc_receive_config_get()

NRF_STATIC_INLINE uint32_t nrf_ipc_receive_config_get ( NRF_IPC_Type *const  p_reg,
uint8_t  index 
)

Function for getting receive event configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of the receive event configuration.
Returns
Mask of channels connected with receive event.

◆ nrf_ipc_receive_config_set()

NRF_STATIC_INLINE void nrf_ipc_receive_config_set ( NRF_IPC_Type *  p_reg,
uint8_t  index,
uint32_t  channels_mask 
)

Function for assigning receive event to the IPC channels.

channels_mask bitmask must be created with nrf_ipc_channel_t values: NRF_IPC_CHANNEL_0 | NRF_IPC_CHANNEL_1 | ... | NRF_IPC_CHANNEL_n

Note
This function overrides current configuration.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of the receive event configuration.
[in]channels_maskBitmask with IPC channels from which the receive event will generate interrupts.

◆ nrf_ipc_receive_event_get()

NRF_STATIC_INLINE nrf_ipc_event_t nrf_ipc_receive_event_get ( uint8_t  index)

Function for getting RECEIVE event by its index.

Parameters
[in]indexIndex of the RECEIVE event.
Returns
RECEIVE event.

◆ nrf_ipc_send_config_get()

NRF_STATIC_INLINE uint32_t nrf_ipc_send_config_get ( NRF_IPC_Type *const  p_reg,
uint8_t  index 
)

Function for getting the configuration of the specified send task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of the send event configuration.
Return values
Bitmaskof channels enabled for this task.

◆ nrf_ipc_send_config_set()

NRF_STATIC_INLINE void nrf_ipc_send_config_set ( NRF_IPC_Type *  p_reg,
uint8_t  index,
uint32_t  channels_mask 
)

Function for setting the configuration of the specified send task.

channels_mask bitmask must be created with nrf_ipc_channel_t values: NRF_IPC_CHANNEL_0 | NRF_IPC_CHANNEL_1 | ... | NRF_IPC_CHANNEL_n

Note
This function overrides current configuration.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of the send task.
[in]channels_maskBitmask specifying channels that are to be enabled for this task.

◆ nrf_ipc_send_task_get()

NRF_STATIC_INLINE nrf_ipc_task_t nrf_ipc_send_task_get ( uint8_t  index)

Function for getting SEND task by its index.

Parameters
[in]indexIndex of the SEND task.
Returns
SEND task.

◆ nrf_ipc_subscribe_clear()

NRF_STATIC_INLINE void nrf_ipc_subscribe_clear ( NRF_IPC_Type *  p_reg,
nrf_ipc_task_t  task 
)

Function for clearing the DPPI subscribe configuration for a given IPC task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask for which to clear the configuration.

◆ nrf_ipc_subscribe_set()

NRF_STATIC_INLINE void nrf_ipc_subscribe_set ( NRF_IPC_Type *  p_reg,
nrf_ipc_task_t  task,
uint8_t  channel 
)

Function for setting the DPPI subscribe configuration for a given IPC task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask for which to set the configuration.
[in]channelDPPI channel through which to subscribe events.

◆ nrf_ipc_task_address_get()

NRF_STATIC_INLINE uint32_t nrf_ipc_task_address_get ( NRF_IPC_Type const *  p_reg,
nrf_ipc_task_t  task 
)

Function for getting the address of the specified IPC task register.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskSpecified task.
Returns
Address of the specified task register.

◆ nrf_ipc_task_trigger()

NRF_STATIC_INLINE void nrf_ipc_task_trigger ( NRF_IPC_Type *  p_reg,
nrf_ipc_task_t  task 
)

Function for triggering the specified IPC task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask to be triggered.

Documentation feedback | Developer Zone | Subscribe | Updated