nRF51 SDK - S120 SoftDevice
|
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... | |
Hardware access layer for the two-wire interface (TWI) peripheral.
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 |
__STATIC_INLINE void nrf_twi_address_set | ( | NRF_TWI_Type * | p_twi, |
uint8_t | addr | ||
) |
Function for setting the slave address.
[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.
[in] | p_twi | TWI instance. |
__STATIC_INLINE void nrf_twi_enable | ( | NRF_TWI_Type * | p_twi | ) |
Function for enabling TWI.
[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.
[in] | p_twi | TWI instance. |
__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.
[in] | p_twi | TWI instance. |
[in] | event | Event. |
__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.
[in] | p_twi | TWI instance. |
[in] | event | Event. |
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.
[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.
[in] | p_twi | TWI instance. |
__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.
[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.
[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.
[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.
[in] | p_twi | TWI instance. |
[in] | int_mask | Interrupts mask. |
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.
[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.
[in] | p_twi | TWI instance. |
__STATIC_INLINE void nrf_twi_shorts_clear | ( | NRF_TWI_Type * | p_twi, |
uint32_t | short_mask | ||
) |
Function for clearing shortcuts.
[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.
[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.
[in] | p_twi | TWI instance. |
[in] | task | Task. |
__STATIC_INLINE void nrf_twi_task_set | ( | NRF_TWI_Type * | p_twi, |
nrf_twi_tasks_t | task | ||
) |
Function for activating a specific TWI task.
[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.
[in] | p_twi | TWI instance. |
[in] | data | Data to be transmitted. |