Hardware access layer for the two-wire interface (TWI) peripheral. More...
Enumerations |
|
| enum |
nrf_twi_tasks_t
{
NRF_TWI_TASKS_STARTRX = offsetof(NRF_TWI_Type, TASKS_STARTRX), NRF_TWI_TASKS_STARTTX = offsetof(NRF_TWI_Type, TASKS_STARTTX), NRF_TWI_TASKS_STOP = offsetof(NRF_TWI_Type, TASKS_STOP), NRF_TWI_TASKS_SUSPEND = offsetof(NRF_TWI_Type, TASKS_SUSPEND), NRF_TWI_TASKS_RESUME = offsetof(NRF_TWI_Type, TASKS_RESUME) } |
|
TWI tasks.
More...
|
|
| enum |
nrf_twi_events_t
{
NRF_TWI_EVENTS_STOPPED = offsetof(NRF_TWI_Type, EVENTS_STOPPED), NRF_TWI_EVENTS_RXDREADY = offsetof(NRF_TWI_Type, EVENTS_RXDREADY), NRF_TWI_EVENTS_TXDSENT = offsetof(NRF_TWI_Type, EVENTS_TXDSENT), NRF_TWI_EVENTS_ERROR = offsetof(NRF_TWI_Type, EVENTS_ERROR), NRF_TWI_EVENTS_BB = offsetof(NRF_TWI_Type, EVENTS_BB), NRF_TWI_EVENTS_SUSPENDED = offsetof(NRF_TWI_Type, EVENTS_SUSPENDED) } |
|
TWI events.
More...
|
|
| enum |
nrf_twi_int_mask_t
{
NRF_TWI_INT_SUSPENDED_MASK = TWI_INTENSET_SUSPENDED_Msk, NRF_TWI_INT_BB_MASK = TWI_INTENSET_BB_Msk, NRF_TWI_INT_ERROR_MASK = TWI_INTENSET_ERROR_Msk, NRF_TWI_INT_TXDSENT_MASK = TWI_INTENSET_TXDSENT_Msk, NRF_TWI_INT_RXDREADY_MASK = TWI_INTENSET_RXDREADY_Msk, NRF_TWI_INT_STOPPED_MASK = TWI_INTENSET_STOPPED_Msk } |
|
TWI interrupts.
More...
|
|
| enum |
nrf_twi_shorts_mask_t
{
NRF_TWI_SHORTS_BB_SUSPEND_MASK = TWI_SHORTS_BB_SUSPEND_Msk, NRF_TWI_SHORTS_BB_STOP_MASK = TWI_SHORTS_BB_STOP_Msk } |
|
Types of TWI shortcuts.
More...
|
|
| enum |
nrf_twi_frequency_t
{
NRF_TWI_FREQ_100K = TWI_FREQUENCY_FREQUENCY_K100, NRF_TWI_FREQ_250K = TWI_FREQUENCY_FREQUENCY_K250, NRF_TWI_FREQ_400K = TWI_FREQUENCY_FREQUENCY_K400 } |
|
TWI master clock frequency.
More...
|
|
| enum |
nrf_twi_error_t
{
NRF_TWI_ERROR_ADDRESS_NACK = TWI_ERRORSRC_ANACK_Msk, NRF_TWI_ERROR_OVERRUN_NACK = TWI_ERRORSRC_OVERRUN_Msk, NRF_TWI_ERROR_DATA_NACK = TWI_ERRORSRC_DNACK_Msk } |
|
TWI error source.
More...
|
|
Functions |
|
| __STATIC_INLINE void | nrf_twi_task_set (NRF_TWI_Type *p_twi, nrf_twi_tasks_t task) |
|
Function for activating a specific TWI task.
More...
|
|
| __STATIC_INLINE uint32_t * | nrf_twi_task_address_get (NRF_TWI_Type *p_twi, nrf_twi_tasks_t task) |
|
Function for returning the address of a specific TWI task register.
More...
|
|
| __STATIC_INLINE void | nrf_twi_event_clear (NRF_TWI_Type *p_twi, nrf_twi_events_t event) |
|
Function for clearing a specific event.
More...
|
|
| __STATIC_INLINE bool | nrf_twi_event_check (NRF_TWI_Type *p_twi, nrf_twi_events_t event) |
|
Function for returning the state of a specific event.
More...
|
|
| __STATIC_INLINE uint32_t * | nrf_twi_event_address_get (NRF_TWI_Type *p_twi, nrf_twi_events_t event) |
|
Function for returning the address of a specific TWI event register.
More...
|
|
| __STATIC_INLINE void | nrf_twi_shorts_set (NRF_TWI_Type *p_twi, uint32_t short_mask) |
|
Function for setting a shortcut.
More...
|
|
| __STATIC_INLINE void | nrf_twi_shorts_clear (NRF_TWI_Type *p_twi, uint32_t short_mask) |
|
Function for clearing shortcuts.
More...
|
|
| __STATIC_INLINE void | nrf_twi_int_enable (NRF_TWI_Type *p_twi, uint32_t int_mask) |
|
Function for enabling a specific interrupt.
More...
|
|
| __STATIC_INLINE bool | nrf_twi_int_enable_check (NRF_TWI_Type *p_twi, uint32_t int_mask) |
|
Function for retrieving the state of a given interrupt.
More...
|
|
| __STATIC_INLINE void | nrf_twi_int_disable (NRF_TWI_Type *p_twi, uint32_t int_mask) |
|
Function for disabling a specific interrupt.
More...
|
|
| __STATIC_INLINE void | nrf_twi_frequency_set (NRF_TWI_Type *p_twi, nrf_twi_frequency_t frequency) |
|
Function for setting the TWI master clock frequency.
More...
|
|
| __STATIC_INLINE nrf_twi_frequency_t | nrf_twi_frequency_get (NRF_TWI_Type *p_twi) |
|
Function for retrieving the TWI frequency.
More...
|
|
| __STATIC_INLINE uint32_t | nrf_twi_error_source_get (NRF_TWI_Type *p_twi) |
|
Function for retrieving the TWI error source.
More...
|
|
| __STATIC_INLINE void | nrf_twi_enable (NRF_TWI_Type *p_twi) |
|
Function for enabling TWI.
More...
|
|
| __STATIC_INLINE void | nrf_twi_disable (NRF_TWI_Type *p_twi) |
|
Function for disabling TWI.
More...
|
|
| __STATIC_INLINE void | nrf_twi_pins_set (NRF_TWI_Type *p_twi, uint32_t scl, uint32_t sda) |
|
Function for configuring TWI pins.
More...
|
|
| __STATIC_INLINE uint8_t | nrf_twi_rxd_get (NRF_TWI_Type *p_twi) |
|
Function for reading RX data from TWI.
More...
|
|
| __STATIC_INLINE void | nrf_twi_txd_set (NRF_TWI_Type *p_twi, uint8_t data) |
|
Function for writing data to TWI.
More...
|
|
| __STATIC_INLINE void | nrf_twi_address_set (NRF_TWI_Type *p_twi, uint8_t addr) |
|
Function for setting the slave address.
More...
|
|
Detailed Description
Hardware access layer for the two-wire interface (TWI) peripheral.
Enumeration Type Documentation
| enum nrf_twi_error_t |
| enum nrf_twi_events_t |
TWI events.
| enum nrf_twi_frequency_t |
| enum nrf_twi_int_mask_t |
TWI interrupts.
| enum nrf_twi_tasks_t |
Function Documentation
| __STATIC_INLINE void nrf_twi_address_set | ( | NRF_TWI_Type * | p_twi , |
| uint8_t | addr | ||
| ) |
Function for setting the slave address.
- Parameters
-
[in] p_twi TWI instance. [in] addr Address of next transaction.
| __STATIC_INLINE void nrf_twi_disable | ( | NRF_TWI_Type * | p_twi | ) |
Function for disabling TWI.
- Parameters
-
[in] p_twi TWI instance.
| __STATIC_INLINE void nrf_twi_enable | ( | NRF_TWI_Type * | p_twi | ) |
Function for enabling TWI.
- Parameters
-
[in] p_twi TWI instance.
| __STATIC_INLINE uint32_t nrf_twi_error_source_get | ( | NRF_TWI_Type * | p_twi | ) |
Function for retrieving the TWI error source.
Error sources are cleared after read.
- Parameters
-
[in] p_twi TWI instance.
- Returns
- Error source mask.
| __STATIC_INLINE uint32_t* nrf_twi_event_address_get | ( | NRF_TWI_Type * | p_twi , |
| nrf_twi_events_t | event | ||
| ) |
Function for returning the address of a specific TWI event register.
- Parameters
-
[in] p_twi TWI instance. [in] event Event.
- Returns
- Address.
| __STATIC_INLINE bool nrf_twi_event_check | ( | NRF_TWI_Type * | p_twi , |
| nrf_twi_events_t | event | ||
| ) |
Function for returning the state of a specific event.
- Parameters
-
[in] p_twi TWI instance. [in] event Event.
- Return values
-
true If the event is set. false If the event is not set.
| __STATIC_INLINE void nrf_twi_event_clear | ( | NRF_TWI_Type * | p_twi , |
| nrf_twi_events_t | event | ||
| ) |
Function for clearing a specific event.
- Parameters
-
[in] p_twi TWI instance. [in] event Event.
| __STATIC_INLINE nrf_twi_frequency_t nrf_twi_frequency_get | ( | NRF_TWI_Type * | p_twi | ) |
Function for retrieving the TWI frequency.
- Parameters
-
[in] p_twi TWI instance.
- Returns
- Frequency.
| __STATIC_INLINE void nrf_twi_frequency_set | ( | NRF_TWI_Type * | p_twi , |
| nrf_twi_frequency_t | frequency | ||
| ) |
Function for setting the TWI master clock frequency.
- Parameters
-
[in] p_twi TWI instance. [in] frequency TWI frequency value.
| __STATIC_INLINE void nrf_twi_int_disable | ( | NRF_TWI_Type * | p_twi , |
| uint32_t | int_mask | ||
| ) |
Function for disabling a specific interrupt.
- Parameters
-
[in] p_twi TWI instance. [in] int_mask Interrupts mask.
| __STATIC_INLINE void nrf_twi_int_enable | ( | NRF_TWI_Type * | p_twi , |
| uint32_t | int_mask | ||
| ) |
Function for enabling a specific interrupt.
- Parameters
-
[in] p_twi TWI instance. [in] int_mask Interrupts mask.
| __STATIC_INLINE bool nrf_twi_int_enable_check | ( | NRF_TWI_Type * | p_twi , |
| uint32_t | int_mask | ||
| ) |
Function for retrieving the state of a given interrupt.
- Parameters
-
[in] p_twi TWI instance. [in] int_mask Interrupts mask.
- Return values
-
true If the interrupts are enabled. false If the interrupts are not enabled.
| __STATIC_INLINE void nrf_twi_pins_set | ( | NRF_TWI_Type * | p_twi , |
| uint32_t | scl , | ||
| uint32_t | sda | ||
| ) |
Function for configuring TWI pins.
- Parameters
-
[in] p_twi TWI instance. [in] scl SCL pin number. [in] sda SDA pin number.
| __STATIC_INLINE uint8_t nrf_twi_rxd_get | ( | NRF_TWI_Type * | p_twi | ) |
Function for reading RX data from TWI.
- Parameters
-
[in] p_twi TWI instance.
- Returns
- RX data.
| __STATIC_INLINE void nrf_twi_shorts_clear | ( | NRF_TWI_Type * | p_twi , |
| uint32_t | short_mask | ||
| ) |
Function for clearing shortcuts.
- Parameters
-
[in] p_twi TWI instance. [in] short_mask Shortcuts mask.
| __STATIC_INLINE void nrf_twi_shorts_set | ( | NRF_TWI_Type * | p_twi , |
| uint32_t | short_mask | ||
| ) |
Function for setting a shortcut.
- Parameters
-
[in] p_twi TWI instance. [in] short_mask Shortcuts mask.
| __STATIC_INLINE uint32_t* nrf_twi_task_address_get | ( | NRF_TWI_Type * | p_twi , |
| nrf_twi_tasks_t | task | ||
| ) |
Function for returning the address of a specific TWI task register.
- Parameters
-
[in] p_twi TWI instance. [in] task Task.
- Returns
- Task address.
| __STATIC_INLINE void nrf_twi_task_set | ( | NRF_TWI_Type * | p_twi , |
| nrf_twi_tasks_t | task | ||
| ) |
Function for activating a specific TWI task.
- Parameters
-
[in] p_twi TWI instance. [in] task Task.
| __STATIC_INLINE void nrf_twi_txd_set | ( | NRF_TWI_Type * | p_twi , |
| uint8_t | data | ||
| ) |
Function for writing data to TWI.
- Parameters
-
[in] p_twi TWI instance. [in] data Data to be transmitted.