![]() |
nrfx 4.5.0
|
Hardware access layer for managing the Distributed Programmable Peripheral Interconnect Controller (DPPIC). More...
Macros | |
| #define | NRF_DPPI_ENDPOINT_SETUP(task_or_event, dppi_chan) |
| Macro for setting publish/subscribe register corresponding to specified event/task. | |
| #define | NRF_DPPI_ENDPOINT_CLEAR(task_or_event) |
| Macro for clearing publish/subscribe register corresponding to specified event/task. | |
| #define | NRF_DPPI_ENDPOINT_ENABLE(task_or_event) |
| Macro for enabling publish/subscribe register corresponding to specified event/task. | |
| #define | NRF_DPPI_ENDPOINT_DISABLE(task_or_event) |
| Macro for disabling publish/subscribe register corresponding to specified event/task. | |
| #define | NRF_DPPI_HAS_APB_MAPPING 1 |
| Symbol indicating whether DPPI instance can be mapped to a peripheral based on common APB. | |
| #define | NRF_DPPI_APB_MASK 0x10000UL |
| Symbol specifying bitmask for mapping specific DPPIC to a respective APB it belongs to. | |
Enumerations | |
| enum | nrf_dppi_channel_group_t { NRF_DPPI_CHANNEL_GROUP0 = 0 , NRF_DPPI_CHANNEL_GROUP1 = 1 , NRF_DPPI_CHANNEL_GROUP2 = 2 , NRF_DPPI_CHANNEL_GROUP3 = 3 , NRF_DPPI_CHANNEL_GROUP4 = 4 , NRF_DPPI_CHANNEL_GROUP5 = 5 } |
| DPPI channel groups. More... | |
| enum | nrf_dppi_task_t { NRF_DPPI_TASK_CHG0_EN = offsetof(NRF_DPPIC_Type, TASKS_CHG[0].EN) , NRF_DPPI_TASK_CHG0_DIS = offsetof(NRF_DPPIC_Type, TASKS_CHG[0].DIS) , NRF_DPPI_TASK_CHG1_EN = offsetof(NRF_DPPIC_Type, TASKS_CHG[1].EN) , NRF_DPPI_TASK_CHG1_DIS = offsetof(NRF_DPPIC_Type, TASKS_CHG[1].DIS) , NRF_DPPI_TASK_CHG2_EN = offsetof(NRF_DPPIC_Type, TASKS_CHG[2].EN) , NRF_DPPI_TASK_CHG2_DIS = offsetof(NRF_DPPIC_Type, TASKS_CHG[2].DIS) , NRF_DPPI_TASK_CHG3_EN = offsetof(NRF_DPPIC_Type, TASKS_CHG[3].EN) , NRF_DPPI_TASK_CHG3_DIS = offsetof(NRF_DPPIC_Type, TASKS_CHG[3].DIS) , NRF_DPPI_TASK_CHG4_EN = offsetof(NRF_DPPIC_Type, TASKS_CHG[4].EN) , NRF_DPPI_TASK_CHG4_DIS = offsetof(NRF_DPPIC_Type, TASKS_CHG[4].DIS) , NRF_DPPI_TASK_CHG5_EN = offsetof(NRF_DPPIC_Type, TASKS_CHG[5].EN) , NRF_DPPI_TASK_CHG5_DIS = offsetof(NRF_DPPIC_Type, TASKS_CHG[5].DIS) } |
| DPPI tasks. More... | |
Functions | |
| NRF_STATIC_INLINE uint8_t | nrf_dppi_channel_number_get (NRF_DPPIC_Type const *p_reg) |
| Function for getting the total number of available channels for the given DPPIC instance. | |
| NRF_STATIC_INLINE uint8_t | nrf_dppi_group_number_get (NRF_DPPIC_Type const *p_reg) |
| Function for getting the total number of available groups for the given DPPIC instance. | |
| NRF_STATIC_INLINE void | nrf_dppi_task_trigger (NRF_DPPIC_Type *p_reg, nrf_dppi_task_t dppi_task) |
| Function for activating a DPPI task. | |
| NRF_STATIC_INLINE uint32_t | nrf_dppi_task_address_get (NRF_DPPIC_Type const *p_reg, nrf_dppi_task_t task) |
| Function for getting the address of the specified DPPI task register. | |
| NRF_STATIC_INLINE bool | nrf_dppi_channel_check (NRF_DPPIC_Type const *p_reg, uint8_t channel) |
| Function for checking the state of a specific DPPI channel. | |
| NRF_STATIC_INLINE void | nrf_dppi_channels_enable (NRF_DPPIC_Type *p_reg, uint32_t mask) |
| Function for enabling multiple DPPI channels. | |
| NRF_STATIC_INLINE void | nrf_dppi_channels_disable (NRF_DPPIC_Type *p_reg, uint32_t mask) |
| Function for disabling multiple DPPI channels. | |
| NRF_STATIC_INLINE void | nrf_dppi_channels_disable_all (NRF_DPPIC_Type *p_reg) |
| Function for disabling all DPPI channels. | |
| NRF_STATIC_INLINE void | nrf_dppi_subscribe_set (NRF_DPPIC_Type *p_reg, nrf_dppi_task_t task, uint8_t channel) |
| Function for setting the subscribe configuration for a given DPPI task. | |
| NRF_STATIC_INLINE void | nrf_dppi_subscribe_clear (NRF_DPPIC_Type *p_reg, nrf_dppi_task_t task) |
| Function for clearing the subscribe configuration for a given DPPI task. | |
| NRF_STATIC_INLINE uint32_t | nrf_dppi_subscribe_get (NRF_DPPIC_Type const *p_reg, nrf_dppi_task_t task) |
| Function for getting the subscribe configuration for a given DPPI task. | |
| NRF_STATIC_INLINE void | nrf_dppi_channels_group_set (NRF_DPPIC_Type *p_reg, uint32_t channel_mask, nrf_dppi_channel_group_t channel_group) |
| Function for setting multiple DPPI channels in a channel group. | |
| NRF_STATIC_INLINE void | nrf_dppi_channels_include_in_group (NRF_DPPIC_Type *p_reg, uint32_t channel_mask, nrf_dppi_channel_group_t channel_group) |
| Function for including multiple DPPI channels in a channel group. | |
| NRF_STATIC_INLINE void | nrf_dppi_channels_remove_from_group (NRF_DPPIC_Type *p_reg, uint32_t channel_mask, nrf_dppi_channel_group_t channel_group) |
| Function for removing multiple DPPI channels from a channel group. | |
| NRF_STATIC_INLINE void | nrf_dppi_group_clear (NRF_DPPIC_Type *p_reg, nrf_dppi_channel_group_t group) |
| Function for removing all DPPI channels from a channel group. | |
| NRF_STATIC_INLINE void | nrf_dppi_group_enable (NRF_DPPIC_Type *p_reg, nrf_dppi_channel_group_t group) |
| Function for enabling a channel group. | |
| NRF_STATIC_INLINE void | nrf_dppi_group_disable (NRF_DPPIC_Type *p_reg, nrf_dppi_channel_group_t group) |
| Function for disabling a channel group. | |
| NRF_STATIC_INLINE nrf_dppi_task_t | nrf_dppi_group_enable_task_get (uint8_t index) |
| Function for getting the ENABLE task associated with the specified channel group. | |
| NRF_STATIC_INLINE nrf_dppi_task_t | nrf_dppi_group_disable_task_get (uint8_t index) |
| Function for getting the DISABLE task associated with the specified channel group. | |
Hardware access layer for managing the Distributed Programmable Peripheral Interconnect Controller (DPPIC).
| #define NRF_DPPI_ENDPOINT_CLEAR | ( | task_or_event | ) |
Macro for clearing publish/subscribe register corresponding to specified event/task.
| [in] | task_or_event | Address of the event or task for which publish/subscribe register is to be cleared. |
| #define NRF_DPPI_ENDPOINT_DISABLE | ( | task_or_event | ) |
Macro for disabling publish/subscribe register corresponding to specified event/task.
| [in] | task_or_event | Address of the event or task for which publish/subscribe register is to be used. |
| #define NRF_DPPI_ENDPOINT_ENABLE | ( | task_or_event | ) |
Macro for enabling publish/subscribe register corresponding to specified event/task.
| [in] | task_or_event | Address of the event or task for which publish/subscribe register is to be used. |
| #define NRF_DPPI_ENDPOINT_SETUP | ( | task_or_event, | |
| dppi_chan ) |
Macro for setting publish/subscribe register corresponding to specified event/task.
| [in] | task_or_event | Address of the event or task for which publish/subscribe register is to be set. |
| [in] | dppi_chan | DPPIC channel number. |
| enum nrf_dppi_task_t |
DPPI tasks.
| NRF_STATIC_INLINE bool nrf_dppi_channel_check | ( | NRF_DPPIC_Type const * | p_reg, |
| uint8_t | channel ) |
Function for checking the state of a specific DPPI channel.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | channel | Channel to be checked. |
| true | The channel is enabled. |
| false | The channel is not enabled. |
| NRF_STATIC_INLINE uint8_t nrf_dppi_channel_number_get | ( | NRF_DPPIC_Type const * | p_reg | ) |
Function for getting the total number of available channels for the given DPPIC instance.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| NRF_STATIC_INLINE void nrf_dppi_channels_disable | ( | NRF_DPPIC_Type * | p_reg, |
| uint32_t | mask ) |
Function for disabling multiple DPPI channels.
The bits in mask value correspond to particular channels. It means that writing 1 to bit 0 disables channel 0, writing 1 to bit 1 disables channel 1 etc.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | mask | Channel mask. |
| NRF_STATIC_INLINE void nrf_dppi_channels_disable_all | ( | NRF_DPPIC_Type * | p_reg | ) |
Function for disabling all DPPI channels.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| NRF_STATIC_INLINE void nrf_dppi_channels_enable | ( | NRF_DPPIC_Type * | p_reg, |
| uint32_t | mask ) |
Function for enabling multiple DPPI channels.
The bits in mask value correspond to particular channels. It means that writing 1 to bit 0 enables channel 0, writing 1 to bit 1 enables channel 1 etc.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | mask | Channel mask. |
| NRF_STATIC_INLINE void nrf_dppi_channels_group_set | ( | NRF_DPPIC_Type * | p_reg, |
| uint32_t | channel_mask, | ||
| nrf_dppi_channel_group_t | channel_group ) |
Function for setting multiple DPPI channels in a channel group.
This function assigns all specified channels to the group. The bits in channel_mask value correspond to particular channels. It means that writing 1 to bit 0 includes channel 0, writing 1 to bit 1 includes channel 1, and so on.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | channel_mask | Channels to be assigned in the group. |
| [in] | channel_group | Channel group. |
| NRF_STATIC_INLINE void nrf_dppi_channels_include_in_group | ( | NRF_DPPIC_Type * | p_reg, |
| uint32_t | channel_mask, | ||
| nrf_dppi_channel_group_t | channel_group ) |
Function for including multiple DPPI channels in a channel group.
This function adds all specified channels to the group. The bits in channel_mask value correspond to particular channels. It means that writing 1 to bit 0 includes channel 0, writing 1 to bit 1 includes channel 1 etc.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | channel_mask | Channels to be included in the group. |
| [in] | channel_group | Channel group. |
| NRF_STATIC_INLINE void nrf_dppi_channels_remove_from_group | ( | NRF_DPPIC_Type * | p_reg, |
| uint32_t | channel_mask, | ||
| nrf_dppi_channel_group_t | channel_group ) |
Function for removing multiple DPPI channels from a channel group.
This function removes all specified channels from the group. The bits in channel_mask value correspond to particular channels. It means that writing 1 to bit 0 removes channel 0, writing 1 to bit 1 removes channel 1 etc.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | channel_mask | Channels to be removed from the group. |
| [in] | channel_group | Channel group. |
| NRF_STATIC_INLINE void nrf_dppi_group_clear | ( | NRF_DPPIC_Type * | p_reg, |
| nrf_dppi_channel_group_t | group ) |
Function for removing all DPPI channels from a channel group.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | group | Channel group. |
| NRF_STATIC_INLINE void nrf_dppi_group_disable | ( | NRF_DPPIC_Type * | p_reg, |
| nrf_dppi_channel_group_t | group ) |
Function for disabling a channel group.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | group | Channel group. |
| NRF_STATIC_INLINE nrf_dppi_task_t nrf_dppi_group_disable_task_get | ( | uint8_t | index | ) |
Function for getting the DISABLE task associated with the specified channel group.
| [in] | index | Channel group index. |
| NRF_STATIC_INLINE void nrf_dppi_group_enable | ( | NRF_DPPIC_Type * | p_reg, |
| nrf_dppi_channel_group_t | group ) |
Function for enabling a channel group.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | group | Channel group. |
| NRF_STATIC_INLINE nrf_dppi_task_t nrf_dppi_group_enable_task_get | ( | uint8_t | index | ) |
Function for getting the ENABLE task associated with the specified channel group.
| [in] | index | Channel group index. |
| NRF_STATIC_INLINE uint8_t nrf_dppi_group_number_get | ( | NRF_DPPIC_Type const * | p_reg | ) |
Function for getting the total number of available groups for the given DPPIC instance.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| NRF_STATIC_INLINE void nrf_dppi_subscribe_clear | ( | NRF_DPPIC_Type * | p_reg, |
| nrf_dppi_task_t | task ) |
Function for clearing the subscribe configuration for a given DPPI task.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | task | Task for which to clear the configuration. |
| NRF_STATIC_INLINE uint32_t nrf_dppi_subscribe_get | ( | NRF_DPPIC_Type const * | p_reg, |
| nrf_dppi_task_t | task ) |
Function for getting the subscribe configuration for a given DPPI task.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | task | Task for which to read the configuration. |
| NRF_STATIC_INLINE void nrf_dppi_subscribe_set | ( | NRF_DPPIC_Type * | p_reg, |
| nrf_dppi_task_t | task, | ||
| uint8_t | channel ) |
Function for setting the subscribe configuration for a given DPPI task.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | task | Task for which to set the configuration. |
| [in] | channel | Channel through which to subscribe events. |
| NRF_STATIC_INLINE uint32_t nrf_dppi_task_address_get | ( | NRF_DPPIC_Type const * | p_reg, |
| nrf_dppi_task_t | task ) |
Function for getting the address of the specified DPPI task register.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | task | Requested task. |
| NRF_STATIC_INLINE void nrf_dppi_task_trigger | ( | NRF_DPPIC_Type * | p_reg, |
| nrf_dppi_task_t | dppi_task ) |
Function for activating a DPPI task.
| [in] | p_reg | Pointer to the structure of registers of the peripheral. |
| [in] | dppi_task | Task to be activated. |