nrfx 4.5.0
Loading...
Searching...
No Matches
TWIM HAL

Hardware access layer for managing the TWIM peripheral. More...

Macros

#define NRF_TWIM_INST_GET(idx)
 Macro getting pointer to the structure of registers of the TWIM peripheral.
 
#define NRF_TWIM_HAS_1000_KHZ_FREQ   1
 Symbol indicating whether 1000 kHz clock frequency is available.
 
#define NRF_TWIM_HAS_ARRAY_LIST   1
 Symbol indicating whether EasyDMA array list feature is present.
 
#define NRF_TWIM_HAS_DMA_REG   1
 Symbol indicating whether dedicated DMA register is present.
 
#define NRF_TWIM_HAS_DMA_CURRENTAMOUNT_REG   1
 Symbol indicating whether DMA CURRENTAMOUNT registers are present.
 
#define NRF_TWIM_HAS_DMA_TASKS_EVENTS   1
 Symbol indicating whether TWIM DMA tasks and events are present.
 
#define NRF_TWIM_HAS_DMA_SHORTS   1
 Symbol indicating whether TWIM DMA shortcuts are present.
 
#define NRF_TWIM_HAS_BUS_ERROR_EVENTS   1
 Symbol indicating whether TWIM BUSERROR events are present.
 
#define NRF_TWIM_DMA_RX_PATTERN_MAX_COUNT   TWIM_DMA_RX_MATCH_CANDIDATE_MaxCount
 Max number of RX patterns.
 
#define NRF_TWIM_HAS_CUSTOM_FREQUENCIES   1
 Symbol indicating whether TWIM supports custom frequencies.
 

Enumerations

enum  nrf_twim_task_t {
  NRF_TWIM_TASK_STARTRX = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.START) ,
  NRF_TWIM_TASK_STOPRX = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.STOP) ,
  NRF_TWIM_TASK_STARTTX = offsetof(NRF_TWIM_Type, TASKS_DMA.TX.START) ,
  NRF_TWIM_TASK_STOPTX = offsetof(NRF_TWIM_Type, TASKS_DMA.TX.STOP) ,
  NRF_TWIM_TASK_ENABLERXMATCH0 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.ENABLEMATCH[0]) ,
  NRF_TWIM_TASK_ENABLERXMATCH1 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.ENABLEMATCH[1]) ,
  NRF_TWIM_TASK_ENABLERXMATCH2 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.ENABLEMATCH[2]) ,
  NRF_TWIM_TASK_ENABLERXMATCH3 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.ENABLEMATCH[3]) ,
  NRF_TWIM_TASK_DISABLERXMATCH0 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.DISABLEMATCH[0]) ,
  NRF_TWIM_TASK_DISABLERXMATCH1 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.DISABLEMATCH[1]) ,
  NRF_TWIM_TASK_DISABLERXMATCH2 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.DISABLEMATCH[2]) ,
  NRF_TWIM_TASK_DISABLERXMATCH3 = offsetof(NRF_TWIM_Type, TASKS_DMA.RX.DISABLEMATCH[3]) ,
  NRF_TWIM_TASK_STOP = offsetof(NRF_TWIM_Type, TASKS_STOP) ,
  NRF_TWIM_TASK_SUSPEND = offsetof(NRF_TWIM_Type, TASKS_SUSPEND) ,
  NRF_TWIM_TASK_RESUME = offsetof(NRF_TWIM_Type, TASKS_RESUME)
}
 TWIM tasks. More...
 
enum  nrf_twim_event_t {
  NRF_TWIM_EVENT_STOPPED = offsetof(NRF_TWIM_Type, EVENTS_STOPPED) ,
  NRF_TWIM_EVENT_ERROR = offsetof(NRF_TWIM_Type, EVENTS_ERROR) ,
  NRF_TWIM_EVENT_SUSPENDED = offsetof(NRF_TWIM_Type, EVENTS_SUSPENDED) ,
  NRF_TWIM_EVENT_ENDRX = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.END) ,
  NRF_TWIM_EVENT_RXSTARTED = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.READY) ,
  NRF_TWIM_EVENT_RXMATCH0 = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.MATCH[0]) ,
  NRF_TWIM_EVENT_RXMATCH1 = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.MATCH[1]) ,
  NRF_TWIM_EVENT_RXMATCH2 = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.MATCH[2]) ,
  NRF_TWIM_EVENT_RXMATCH3 = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.MATCH[3]) ,
  NRF_TWIM_EVENT_ENDTX = offsetof(NRF_TWIM_Type, EVENTS_DMA.TX.END) ,
  NRF_TWIM_EVENT_TXSTARTED = offsetof(NRF_TWIM_Type, EVENTS_DMA.TX.READY) ,
  NRF_TWIM_EVENT_RXBUSERROR = offsetof(NRF_TWIM_Type, EVENTS_DMA.RX.BUSERROR) ,
  NRF_TWIM_EVENT_TXBUSERROR = offsetof(NRF_TWIM_Type, EVENTS_DMA.TX.BUSERROR) ,
  NRF_TWIM_EVENT_LASTRX = offsetof(NRF_TWIM_Type, EVENTS_LASTRX) ,
  NRF_TWIM_EVENT_LASTTX = offsetof(NRF_TWIM_Type, EVENTS_LASTTX)
}
 TWIM events. More...
 
enum  nrf_twim_short_mask_t {
  NRF_TWIM_SHORT_LASTTX_SUSPEND_MASK = TWIM_SHORTS_LASTTX_SUSPEND_Msk ,
  NRF_TWIM_SHORT_LASTTX_STOP_MASK = TWIM_SHORTS_LASTTX_STOP_Msk ,
  NRF_TWIM_SHORT_LASTRX_STOP_MASK = TWIM_SHORTS_LASTRX_STOP_Msk ,
  NRF_TWIM_SHORT_LASTTX_STARTRX_MASK = TWIM_SHORTS_LASTTX_DMA_RX_START_Msk ,
  NRF_TWIM_SHORT_LASTRX_STARTTX_MASK = TWIM_SHORTS_LASTRX_DMA_TX_START_Msk ,
  NRF_TWIM_SHORT_RXMATCH0_ENABLERXMATCH1_MASK = TWIM_SHORTS_DMA_RX_MATCH0_DMA_RX_ENABLEMATCH1_Msk ,
  NRF_TWIM_SHORT_RXMATCH1_ENABLERXMATCH2_MASK = TWIM_SHORTS_DMA_RX_MATCH1_DMA_RX_ENABLEMATCH2_Msk ,
  NRF_TWIM_SHORT_RXMATCH2_ENABLERXMATCH3_MASK = TWIM_SHORTS_DMA_RX_MATCH2_DMA_RX_ENABLEMATCH3_Msk ,
  NRF_TWIM_SHORT_RXMATCH3_ENABLERXMATCH0_MASK = TWIM_SHORTS_DMA_RX_MATCH3_DMA_RX_ENABLEMATCH0_Msk ,
  NRF_TWIM_SHORT_RXMATCH0_DISABLERXMATCH0_MASK = TWIM_SHORTS_DMA_RX_MATCH0_DMA_RX_DISABLEMATCH0_Msk ,
  NRF_TWIM_SHORT_RXMATCH1_DISABLERXMATCH1_MASK = TWIM_SHORTS_DMA_RX_MATCH1_DMA_RX_DISABLEMATCH1_Msk ,
  NRF_TWIM_SHORT_RXMATCH2_DISABLERXMATCH2_MASK = TWIM_SHORTS_DMA_RX_MATCH2_DMA_RX_DISABLEMATCH2_Msk ,
  NRF_TWIM_SHORT_RXMATCH3_DISABLERXMATCH3_MASK = TWIM_SHORTS_DMA_RX_MATCH3_DMA_RX_DISABLEMATCH3_Msk ,
  NRF_TWIM_ALL_SHORTS_MASK
}
 TWIM shortcuts. More...
 
enum  nrf_twim_int_mask_t {
  NRF_TWIM_INT_STOPPED_MASK = TWIM_INTENSET_STOPPED_Msk ,
  NRF_TWIM_INT_ERROR_MASK = TWIM_INTENSET_ERROR_Msk ,
  NRF_TWIM_INT_SUSPENDED_MASK = TWIM_INTENSET_SUSPENDED_Msk ,
  NRF_TWIM_INT_RXSTARTED_MASK = TWIM_INTENSET_DMARXREADY_Msk ,
  NRF_TWIM_INT_TXSTARTED_MASK = TWIM_INTENSET_DMATXREADY_Msk ,
  NRF_TWIM_INT_ENDRX_MASK = TWIM_INTENSET_DMARXEND_Msk ,
  NRF_TWIM_INT_RXREADY_MASK = TWIM_INTENSET_DMARXREADY_Msk ,
  NRF_TWIM_INT_RXBUSERROR_MASK = TWIM_INTENSET_DMARXBUSERROR_Msk ,
  NRF_TWIM_INT_RXMATCH0_MASK = TWIM_INTENSET_DMARXMATCH0_Msk ,
  NRF_TWIM_INT_RXMATCH1_MASK = TWIM_INTENSET_DMARXMATCH1_Msk ,
  NRF_TWIM_INT_RXMATCH2_MASK = TWIM_INTENSET_DMARXMATCH2_Msk ,
  NRF_TWIM_INT_RXMATCH3_MASK = TWIM_INTENSET_DMARXMATCH3_Msk ,
  NRF_TWIM_INT_ENDTX_MASK = TWIM_INTENSET_DMATXEND_Msk ,
  NRF_TWIM_INT_TXREADY_MASK = TWIM_INTENSET_DMATXREADY_Msk ,
  NRF_TWIM_INT_TXBUSERROR_MASK = TWIM_INTENSET_DMATXBUSERROR_Msk ,
  NRF_TWIM_INT_LASTRX_MASK = TWIM_INTENSET_LASTRX_Msk ,
  NRF_TWIM_INT_LASTTX_MASK = TWIM_INTENSET_LASTTX_Msk ,
  NRF_TWIM_ALL_INTS_MASK
}
 TWIM interrupts. More...
 
enum  nrf_twim_frequency_t {
  NRF_TWIM_FREQ_100K = TWIM_FREQUENCY_FREQUENCY_K100 ,
  NRF_TWIM_FREQ_250K = TWIM_FREQUENCY_FREQUENCY_K250 ,
  NRF_TWIM_FREQ_400K = TWIM_FREQUENCY_FREQUENCY_K400 ,
  NRF_TWIM_FREQ_1000K = TWIM_FREQUENCY_FREQUENCY_K1000
}
 TWIM master clock frequency. More...
 
enum  nrf_twim_error_t {
  NRF_TWIM_ERROR_ADDRESS_NACK = TWIM_ERRORSRC_ANACK_Msk ,
  NRF_TWIM_ERROR_DATA_NACK = TWIM_ERRORSRC_DNACK_Msk ,
  NRF_TWIM_ERROR_OVERRUN = TWIM_ERRORSRC_OVERRUN_Msk
}
 TWIM error source. More...
 

Functions

NRF_STATIC_INLINE void nrf_twim_task_trigger (NRF_TWIM_Type *p_reg, nrf_twim_task_t task)
 Function for activating the specified TWIM task.
 
NRF_STATIC_INLINE uint32_t nrf_twim_task_address_get (NRF_TWIM_Type const *p_reg, nrf_twim_task_t task)
 Function for getting the address of the specified TWIM task register.
 
NRF_STATIC_INLINE void nrf_twim_event_clear (NRF_TWIM_Type *p_reg, nrf_twim_event_t event)
 Function for clearing the specified TWIM event.
 
NRF_STATIC_INLINE bool nrf_twim_event_check (NRF_TWIM_Type const *p_reg, nrf_twim_event_t event)
 Function for retrieving the state of the TWIM event.
 
NRF_STATIC_INLINE uint32_t nrf_twim_event_address_get (NRF_TWIM_Type const *p_reg, nrf_twim_event_t event)
 Function for getting the address of the specified TWIM event register.
 
NRF_STATIC_INLINE void nrf_twim_shorts_enable (NRF_TWIM_Type *p_reg, uint32_t mask)
 Function for enabling the specified shortcuts.
 
NRF_STATIC_INLINE void nrf_twim_shorts_disable (NRF_TWIM_Type *p_reg, uint32_t mask)
 Function for disabling the specified shortcuts.
 
NRF_STATIC_INLINE void nrf_twim_int_enable (NRF_TWIM_Type *p_reg, uint32_t mask)
 Function for enabling the specified interrupts.
 
NRF_STATIC_INLINE void nrf_twim_int_disable (NRF_TWIM_Type *p_reg, uint32_t mask)
 Function for disabling the specified interrupts.
 
NRF_STATIC_INLINE uint32_t nrf_twim_int_enable_check (NRF_TWIM_Type const *p_reg, uint32_t mask)
 Function for checking if the specified interrupts are enabled.
 
NRF_STATIC_INLINE void nrf_twim_subscribe_set (NRF_TWIM_Type *p_reg, nrf_twim_task_t task, uint8_t channel)
 Function for setting the subscribe configuration for a given TWIM task.
 
NRF_STATIC_INLINE void nrf_twim_subscribe_clear (NRF_TWIM_Type *p_reg, nrf_twim_task_t task)
 Function for clearing the subscribe configuration for a given TWIM task.
 
NRF_STATIC_INLINE uint32_t nrf_twim_subscribe_get (NRF_TWIM_Type const *p_reg, nrf_twim_task_t task)
 Function for getting the subscribe configuration for a given TWIM task.
 
NRF_STATIC_INLINE void nrf_twim_publish_set (NRF_TWIM_Type *p_reg, nrf_twim_event_t event, uint8_t channel)
 Function for setting the publish configuration for a given TWIM event.
 
NRF_STATIC_INLINE void nrf_twim_publish_clear (NRF_TWIM_Type *p_reg, nrf_twim_event_t event)
 Function for clearing the publish configuration for a given TWIM event.
 
NRF_STATIC_INLINE uint32_t nrf_twim_publish_get (NRF_TWIM_Type const *p_reg, nrf_twim_event_t event)
 Function for getting the publish configuration for a given TWIM event.
 
NRF_STATIC_INLINE void nrf_twim_enable (NRF_TWIM_Type *p_reg)
 Function for enabling the TWIM peripheral.
 
NRF_STATIC_INLINE void nrf_twim_disable (NRF_TWIM_Type *p_reg)
 Function for disabling the TWIM peripheral.
 
NRF_STATIC_INLINE void nrf_twim_pins_set (NRF_TWIM_Type *p_reg, uint32_t scl_pin, uint32_t sda_pin)
 Function for configuring TWI pins.
 
NRF_STATIC_INLINE void nrf_twim_scl_pin_set (NRF_TWIM_Type *p_reg, uint32_t pin)
 Function for setting the SCL pin.
 
NRF_STATIC_INLINE void nrf_twim_sda_pin_set (NRF_TWIM_Type *p_reg, uint32_t pin)
 Function for setting the SDA pin.
 
NRF_STATIC_INLINE uint32_t nrf_twim_scl_pin_get (NRF_TWIM_Type const *p_reg)
 Function for retrieving the SCL pin selection.
 
NRF_STATIC_INLINE uint32_t nrf_twim_sda_pin_get (NRF_TWIM_Type const *p_reg)
 Function for retrieving the SDA pin selection.
 
NRF_STATIC_INLINE void nrf_twim_frequency_set (NRF_TWIM_Type *p_reg, nrf_twim_frequency_t frequency)
 Function for setting the TWI master clock frequency.
 
NRF_STATIC_INLINE uint32_t nrf_twim_errorsrc_get_and_clear (NRF_TWIM_Type *p_reg)
 Function for checking the TWI error source.
 
NRF_STATIC_INLINE void nrf_twim_address_set (NRF_TWIM_Type *p_reg, uint8_t address)
 Function for setting the address to be used in TWI transfers.
 
NRF_STATIC_INLINE uint8_t nrf_twim_address_get (NRF_TWIM_Type const *p_reg)
 Function for getting the address to be used in TWI transfers.
 
NRF_STATIC_INLINE void nrf_twim_tx_ptr_set (NRF_TWIM_Type *p_reg, uint8_t const *p_buffer)
 Function for setting the transmit buffer address.
 
NRF_STATIC_INLINE void nrf_twim_tx_maxcnt_set (NRF_TWIM_Type *p_reg, size_t length)
 Function for setting the transmit buffer length.
 
NRF_STATIC_INLINE void nrf_twim_tx_buffer_set (NRF_TWIM_Type *p_reg, uint8_t const *p_buffer, size_t length)
 Function for setting the transmit buffer.
 
NRF_STATIC_INLINE void nrf_twim_rx_ptr_set (NRF_TWIM_Type *p_reg, uint8_t *p_buffer)
 Function for setting the receive buffer address.
 
NRF_STATIC_INLINE void nrf_twim_rx_maxcnt_set (NRF_TWIM_Type *p_reg, size_t length)
 Function for setting the receive buffer length.
 
NRF_STATIC_INLINE void nrf_twim_rx_buffer_set (NRF_TWIM_Type *p_reg, uint8_t *p_buffer, size_t length)
 Function for setting the receive buffer.
 
NRF_STATIC_INLINE void nrf_twim_shorts_set (NRF_TWIM_Type *p_reg, uint32_t mask)
 Function for setting the specified shortcuts.
 
NRF_STATIC_INLINE uint32_t nrf_twim_shorts_get (NRF_TWIM_Type const *p_reg)
 Function for getting the shortcut setting.
 
NRF_STATIC_INLINE size_t nrf_twim_txd_amount_get (NRF_TWIM_Type const *p_reg)
 Function for getting the amount of transmitted bytes.
 
NRF_STATIC_INLINE size_t nrf_twim_rxd_amount_get (NRF_TWIM_Type const *p_reg)
 Function for getting the amount of received bytes in the last transaction.
 
NRF_STATIC_INLINE size_t nrf_twim_txd_curr_amount_get (NRF_TWIM_Type const *p_reg)
 Function for getting the amount of transmitted bytes in the current transaction.
 
NRF_STATIC_INLINE size_t nrf_twim_rxd_curr_amount_get (NRF_TWIM_Type const *p_reg)
 Function for getting the amount of received bytes in the current transaction.
 
NRF_STATIC_INLINE void nrf_twim_tx_list_enable (NRF_TWIM_Type *p_reg)
 Function for enabling the TX list feature.
 
NRF_STATIC_INLINE void nrf_twim_tx_list_disable (NRF_TWIM_Type *p_reg)
 Function for disabling the TX list feature.
 
NRF_STATIC_INLINE void nrf_twim_rx_list_enable (NRF_TWIM_Type *p_reg)
 Function for enabling the RX list feature.
 
NRF_STATIC_INLINE void nrf_twim_rx_list_disable (NRF_TWIM_Type *p_reg)
 Function for disabling the RX list feature.
 
NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_enable_set (NRF_TWIM_Type *p_reg, uint8_t index, bool enable)
 Function for enabling individual pattern match filters.
 
NRF_STATIC_INLINE bool nrf_twim_rx_pattern_match_enable_check (NRF_TWIM_Type const *p_reg, uint8_t index)
 Function for checking if the specified pattern match filter is enabled.
 
NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_one_shot_enable (NRF_TWIM_Type *p_reg, uint8_t index)
 Function for enabling one-shot operation for the specified match filter.
 
NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_one_shot_disable (NRF_TWIM_Type *p_reg, uint8_t index)
 Function for disabling one-shot operation for the specified match filter.
 
NRF_STATIC_INLINE bool nrf_twim_rx_pattern_match_one_shot_check (NRF_TWIM_Type const *p_reg, uint8_t index)
 Function for checking if specified pattern match filter is configured as one-shot.
 
NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_candidate_set (NRF_TWIM_Type *p_reg, uint8_t index, uint32_t pattern)
 Function for setting the pattern to be looked for by the specified match filter.
 
NRF_STATIC_INLINE uint32_t nrf_twim_rx_pattern_match_candidate_get (NRF_TWIM_Type const *p_reg, uint8_t index)
 Function for getting the pattern that the specified match filter is looking for.
 
NRF_STATIC_INLINE void nrf_twim_rx_terminate_on_bus_error_enable_set (NRF_TWIM_Type *p_reg, bool enable)
 Function for enabling RX transaction termination on the detection of a BUSERROR event.
 
NRF_STATIC_INLINE bool nrf_twim_rx_terminate_on_bus_error_check (NRF_TWIM_Type const *p_reg)
 Function for checking if the RX transaction termination on the detection of a BUSERROR event is enabled.
 
NRF_STATIC_INLINE void nrf_twim_tx_terminate_on_bus_error_enable_set (NRF_TWIM_Type *p_reg, bool enable)
 Function for enabling TX transaction termination on the detection of a BUSERROR event.
 
NRF_STATIC_INLINE bool nrf_twim_tx_terminate_on_bus_error_check (NRF_TWIM_Type const *p_reg)
 Function for checking if the TX transaction termination on the detection of a BUSERROR event is enabled.
 

Detailed Description

Hardware access layer for managing the TWIM peripheral.

Macro Definition Documentation

◆ NRF_TWIM_INST_GET

#define NRF_TWIM_INST_GET ( idx)
Value:
NRFX_CONCAT(NRF_, TWIM, idx)
#define NRFX_CONCAT(...)
Macro for concatenating multiple arguments.
Definition nrfx_utils.h:777

Macro getting pointer to the structure of registers of the TWIM peripheral.

Parameters
[in]idxTWIM instance index.
Returns
Pointer to the structure of registers of the TWIM peripheral.

Enumeration Type Documentation

◆ nrf_twim_error_t

TWIM error source.

Enumerator
NRF_TWIM_ERROR_ADDRESS_NACK 

NACK received after sending the address.

NRF_TWIM_ERROR_DATA_NACK 

NACK received after sending a data byte.

NRF_TWIM_ERROR_OVERRUN 

Overrun error.

A new byte was received before the previous byte was handled by peripheral. (previous data is lost).

◆ nrf_twim_event_t

TWIM events.

Enumerator
NRF_TWIM_EVENT_STOPPED 

TWI stopped.

NRF_TWIM_EVENT_ERROR 

TWI error.

NRF_TWIM_EVENT_SUSPENDED 

TWI suspended.

NRF_TWIM_EVENT_ENDRX 

Receive sequence finished.

NRF_TWIM_EVENT_RXSTARTED 

Receive sequence started.

NRF_TWIM_EVENT_RXMATCH0 

Pattern match for pattern 0 detected.

NRF_TWIM_EVENT_RXMATCH1 

Pattern match for pattern 1 detected.

NRF_TWIM_EVENT_RXMATCH2 

Pattern match for pattern 2 detected.

NRF_TWIM_EVENT_RXMATCH3 

Pattern match for pattern 3 detected.

NRF_TWIM_EVENT_ENDTX 

Transmit sequence finished.

NRF_TWIM_EVENT_TXSTARTED 

Transmit sequence started.

NRF_TWIM_EVENT_RXBUSERROR 

Memory bus error occurred during the RX transfer.

NRF_TWIM_EVENT_TXBUSERROR 

Memory bus error occurred during the TX transfer.

NRF_TWIM_EVENT_LASTRX 

Byte boundary, starting to receive the last byte.

NRF_TWIM_EVENT_LASTTX 

Byte boundary, starting to transmit the last byte.

◆ nrf_twim_frequency_t

TWIM master clock frequency.

Enumerator
NRF_TWIM_FREQ_100K 

100 kbps.

NRF_TWIM_FREQ_250K 

250 kbps.

NRF_TWIM_FREQ_400K 

400 kbps.

NRF_TWIM_FREQ_1000K 

1000 kbps.

◆ nrf_twim_int_mask_t

TWIM interrupts.

Enumerator
NRF_TWIM_INT_STOPPED_MASK 

Interrupt on STOPPED event.

NRF_TWIM_INT_ERROR_MASK 

Interrupt on ERROR event.

NRF_TWIM_INT_SUSPENDED_MASK 

Interrupt on SUSPENDED event.

NRF_TWIM_INT_RXSTARTED_MASK 

Interrupt on RXSTARTED event.

NRF_TWIM_INT_TXSTARTED_MASK 

Interrupt on TXSTARTED event.

NRF_TWIM_INT_ENDRX_MASK 

Interrupt on DMA.RX.END event.

NRF_TWIM_INT_RXREADY_MASK 

Interrupt on DMA.RX.READY event.

NRF_TWIM_INT_RXBUSERROR_MASK 

Interrupt on DMA.RX.BUSERROR event.

NRF_TWIM_INT_RXMATCH0_MASK 

Interrupt on DMA.RX.MATCH0 event.

NRF_TWIM_INT_RXMATCH1_MASK 

Interrupt on DMA.RX.MATCH1 event.

NRF_TWIM_INT_RXMATCH2_MASK 

Interrupt on DMA.RX.MATCH2 event.

NRF_TWIM_INT_RXMATCH3_MASK 

Interrupt on DMA.RX.MATCH3 event.

NRF_TWIM_INT_ENDTX_MASK 

Interrupt on DMA.TX.END event.

NRF_TWIM_INT_TXREADY_MASK 

Interrupt on DMA.TX.READY event.

NRF_TWIM_INT_TXBUSERROR_MASK 

Interrupt on DMA.TX.BUSERROR event.

NRF_TWIM_INT_LASTRX_MASK 

Interrupt on LASTRX event.

NRF_TWIM_INT_LASTTX_MASK 

Interrupt on LASTTX event.

NRF_TWIM_ALL_INTS_MASK 

All TWIM interrupts.

◆ nrf_twim_short_mask_t

TWIM shortcuts.

Enumerator
NRF_TWIM_SHORT_LASTTX_SUSPEND_MASK 

Shortcut between LASTTX event and SUSPEND task.

NRF_TWIM_SHORT_LASTTX_STOP_MASK 

Shortcut between LASTTX event and STOP task.

NRF_TWIM_SHORT_LASTRX_STOP_MASK 

Shortcut between LASTRX event and STOP task.

NRF_TWIM_SHORT_LASTTX_STARTRX_MASK 

Shortcut between LASTTX event and STARTRX task.

NRF_TWIM_SHORT_LASTRX_STARTTX_MASK 

Shortcut between LASTRX event and STARTTX task.

NRF_TWIM_SHORT_RXMATCH0_ENABLERXMATCH1_MASK 

Shortcut between DMA.RX.MATCH0 event and DMA.RX.ENABLEMATCH1 task.

NRF_TWIM_SHORT_RXMATCH1_ENABLERXMATCH2_MASK 

Shortcut between DMA.RX.MATCH1 event and DMA.RX.ENABLEMATCH2 task.

NRF_TWIM_SHORT_RXMATCH2_ENABLERXMATCH3_MASK 

Shortcut between DMA.RX.MATCH2 event and DMA.RX.ENABLEMATCH0 task.

NRF_TWIM_SHORT_RXMATCH3_ENABLERXMATCH0_MASK 

Shortcut between DMA.RX.MATCH3 event and DMA.RX.ENABLEMATCH1 task.

NRF_TWIM_SHORT_RXMATCH0_DISABLERXMATCH0_MASK 

Shortcut between DMA.RX.MATCH0 event and DMA.RX.DISABLEMATCH0 task.

NRF_TWIM_SHORT_RXMATCH1_DISABLERXMATCH1_MASK 

Shortcut between DMA.RX.MATCH1 event and DMA.RX.DISABLEMATCH1 task.

NRF_TWIM_SHORT_RXMATCH2_DISABLERXMATCH2_MASK 

Shortcut between DMA.RX.MATCH2 event and DMA.RX.DISABLEMATCH2 task.

NRF_TWIM_SHORT_RXMATCH3_DISABLERXMATCH3_MASK 

Shortcut between DMA.RX.MATCH3 event and DMA.RX.DISABLEMATCH3 task.

NRF_TWIM_ALL_SHORTS_MASK 

All TWIM shortcuts.

◆ nrf_twim_task_t

TWIM tasks.

Enumerator
NRF_TWIM_TASK_STARTRX 

Start TWI receive operation using easyDMA to load the values.

NRF_TWIM_TASK_STOPRX 

Stop TWI receive operation using easyDMA. This does not trigger an END event.

NRF_TWIM_TASK_STARTTX 

Start TWI transmit operation using easyDMA to load the values.

NRF_TWIM_TASK_STOPTX 

Stop TWI transmit operation using easyDMA to load the values.

NRF_TWIM_TASK_ENABLERXMATCH0 

Enable TWI pattern matching functionality for pattern 0.

NRF_TWIM_TASK_ENABLERXMATCH1 

Enable TWI pattern matching functionality for pattern 1.

NRF_TWIM_TASK_ENABLERXMATCH2 

Enable TWI pattern matching functionality for pattern 2.

NRF_TWIM_TASK_ENABLERXMATCH3 

Enable TWI pattern matching functionality for pattern 3.

NRF_TWIM_TASK_DISABLERXMATCH0 

Disable TWI pattern matching functionality for pattern 0.

NRF_TWIM_TASK_DISABLERXMATCH1 

Disable TWI pattern matching functionality for pattern 1.

NRF_TWIM_TASK_DISABLERXMATCH2 

Disable TWI pattern matching functionality for pattern 2.

NRF_TWIM_TASK_DISABLERXMATCH3 

Disable TWI pattern matching functionality for pattern 3.

NRF_TWIM_TASK_STOP 

Stop TWI transaction.

NRF_TWIM_TASK_SUSPEND 

Suspend TWI transaction.

NRF_TWIM_TASK_RESUME 

Resume TWI transaction.

Function Documentation

◆ nrf_twim_address_get()

NRF_STATIC_INLINE uint8_t nrf_twim_address_get ( NRF_TWIM_Type const * p_reg)

Function for getting the address to be used in TWI transfers.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Address to be used in TWI transfers.

◆ nrf_twim_address_set()

NRF_STATIC_INLINE void nrf_twim_address_set ( NRF_TWIM_Type * p_reg,
uint8_t address )

Function for setting the address to be used in TWI transfers.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]addressAddress to be used in transfers.

◆ nrf_twim_disable()

NRF_STATIC_INLINE void nrf_twim_disable ( NRF_TWIM_Type * p_reg)

Function for disabling the TWIM peripheral.

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

◆ nrf_twim_enable()

NRF_STATIC_INLINE void nrf_twim_enable ( NRF_TWIM_Type * p_reg)

Function for enabling the TWIM peripheral.

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

◆ nrf_twim_errorsrc_get_and_clear()

NRF_STATIC_INLINE uint32_t nrf_twim_errorsrc_get_and_clear ( NRF_TWIM_Type * p_reg)

Function for checking the TWI error source.

The error flags are cleared after reading.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Mask with error source flags.

◆ nrf_twim_event_address_get()

NRF_STATIC_INLINE uint32_t nrf_twim_event_address_get ( NRF_TWIM_Type const * p_reg,
nrf_twim_event_t event )

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

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

◆ nrf_twim_event_check()

NRF_STATIC_INLINE bool nrf_twim_event_check ( NRF_TWIM_Type const * p_reg,
nrf_twim_event_t event )

Function for retrieving the state of the TWIM 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_twim_event_clear()

NRF_STATIC_INLINE void nrf_twim_event_clear ( NRF_TWIM_Type * p_reg,
nrf_twim_event_t event )

Function for clearing the specified TWIM event.

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

◆ nrf_twim_frequency_set()

NRF_STATIC_INLINE void nrf_twim_frequency_set ( NRF_TWIM_Type * p_reg,
nrf_twim_frequency_t frequency )

Function for setting the TWI master clock frequency.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]frequencyTWI frequency.

◆ nrf_twim_int_disable()

NRF_STATIC_INLINE void nrf_twim_int_disable ( NRF_TWIM_Type * p_reg,
uint32_t mask )

Function for disabling the specified interrupts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be disabled. Use nrf_twim_int_mask_t values for bit masking.

◆ nrf_twim_int_enable()

NRF_STATIC_INLINE void nrf_twim_int_enable ( NRF_TWIM_Type * p_reg,
uint32_t mask )

Function for enabling the specified interrupts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskMask of interrupts to be enabled. Use nrf_twim_int_mask_t values for bit masking.

◆ nrf_twim_int_enable_check()

NRF_STATIC_INLINE uint32_t nrf_twim_int_enable_check ( NRF_TWIM_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. Use nrf_twim_int_mask_t values for bit masking.
Returns
Mask of enabled interrupts.

◆ nrf_twim_pins_set()

NRF_STATIC_INLINE void nrf_twim_pins_set ( NRF_TWIM_Type * p_reg,
uint32_t scl_pin,
uint32_t sda_pin )

Function for configuring TWI pins.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]scl_pinSCL pin number.
[in]sda_pinSDA pin number.

◆ nrf_twim_publish_clear()

NRF_STATIC_INLINE void nrf_twim_publish_clear ( NRF_TWIM_Type * p_reg,
nrf_twim_event_t event )

Function for clearing the publish configuration for a given TWIM event.

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

◆ nrf_twim_publish_get()

NRF_STATIC_INLINE uint32_t nrf_twim_publish_get ( NRF_TWIM_Type const * p_reg,
nrf_twim_event_t event )

Function for getting the publish configuration for a given TWIM event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent for which to read the configuration.
Returns
TWIM publish configuration.

◆ nrf_twim_publish_set()

NRF_STATIC_INLINE void nrf_twim_publish_set ( NRF_TWIM_Type * p_reg,
nrf_twim_event_t event,
uint8_t channel )

Function for setting the publish configuration for a given TWIM event.

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

◆ nrf_twim_rx_buffer_set()

NRF_STATIC_INLINE void nrf_twim_rx_buffer_set ( NRF_TWIM_Type * p_reg,
uint8_t * p_buffer,
size_t length )

Function for setting the receive buffer.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_bufferPointer to the buffer for received data.
[in]lengthMaximum number of data bytes to receive.

◆ nrf_twim_rx_list_disable()

NRF_STATIC_INLINE void nrf_twim_rx_list_disable ( NRF_TWIM_Type * p_reg)

Function for disabling the RX list feature.

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

◆ nrf_twim_rx_list_enable()

NRF_STATIC_INLINE void nrf_twim_rx_list_enable ( NRF_TWIM_Type * p_reg)

Function for enabling the RX list feature.

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

◆ nrf_twim_rx_maxcnt_set()

NRF_STATIC_INLINE void nrf_twim_rx_maxcnt_set ( NRF_TWIM_Type * p_reg,
size_t length )

Function for setting the receive buffer length.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]lengthMaximum number of data bytes to receive.

◆ nrf_twim_rx_pattern_match_candidate_get()

NRF_STATIC_INLINE uint32_t nrf_twim_rx_pattern_match_candidate_get ( NRF_TWIM_Type const * p_reg,
uint8_t index )

Function for getting the pattern that the specified match filter is looking for.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.
Returns
Pattern that the specified match filter is looking for.

◆ nrf_twim_rx_pattern_match_candidate_set()

NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_candidate_set ( NRF_TWIM_Type * p_reg,
uint8_t index,
uint32_t pattern )

Function for setting the pattern to be looked for by the specified match filter.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.
[in]patternPattern to be looked for. Match will trigger the corresponding event, if enabled.

◆ nrf_twim_rx_pattern_match_enable_check()

NRF_STATIC_INLINE bool nrf_twim_rx_pattern_match_enable_check ( NRF_TWIM_Type const * p_reg,
uint8_t index )

Function for checking if the specified pattern match filter is enabled.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.
Return values
truePattern match filter is enabled.
falsePattern match filter is disabled.

◆ nrf_twim_rx_pattern_match_enable_set()

NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_enable_set ( NRF_TWIM_Type * p_reg,
uint8_t index,
bool enable )

Function for enabling individual pattern match filters.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.
[in]enableTrue if pattern match filter is to be enabled, false otherwise.

◆ nrf_twim_rx_pattern_match_one_shot_check()

NRF_STATIC_INLINE bool nrf_twim_rx_pattern_match_one_shot_check ( NRF_TWIM_Type const * p_reg,
uint8_t index )

Function for checking if specified pattern match filter is configured as one-shot.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.
Return values
truePattern match filter is configured as one-shot.
falsePattern match filter is configured as continuous.

◆ nrf_twim_rx_pattern_match_one_shot_disable()

NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_one_shot_disable ( NRF_TWIM_Type * p_reg,
uint8_t index )

Function for disabling one-shot operation for the specified match filter.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.

◆ nrf_twim_rx_pattern_match_one_shot_enable()

NRF_STATIC_INLINE void nrf_twim_rx_pattern_match_one_shot_enable ( NRF_TWIM_Type * p_reg,
uint8_t index )

Function for enabling one-shot operation for the specified match filter.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]indexIndex of pattern match filter.

◆ nrf_twim_rx_ptr_set()

NRF_STATIC_INLINE void nrf_twim_rx_ptr_set ( NRF_TWIM_Type * p_reg,
uint8_t * p_buffer )

Function for setting the receive buffer address.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_bufferPointer to the buffer for received data.

◆ nrf_twim_rx_terminate_on_bus_error_check()

NRF_STATIC_INLINE bool nrf_twim_rx_terminate_on_bus_error_check ( NRF_TWIM_Type const * p_reg)

Function for checking if the RX transaction termination on the detection of a BUSERROR event is enabled.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
trueTransaction termination on BUSERROR event is enabled.
falseTransaction termination on BUSERROR event is disabled.

◆ nrf_twim_rx_terminate_on_bus_error_enable_set()

NRF_STATIC_INLINE void nrf_twim_rx_terminate_on_bus_error_enable_set ( NRF_TWIM_Type * p_reg,
bool enable )

Function for enabling RX transaction termination on the detection of a BUSERROR event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]enableTrue if the RX transaction termination is to be enabled, false otherwise.

◆ nrf_twim_rxd_amount_get()

NRF_STATIC_INLINE size_t nrf_twim_rxd_amount_get ( NRF_TWIM_Type const * p_reg)

Function for getting the amount of received bytes in the last transaction.

Note
In case of NACK error, includes the NACK'ed byte.
Number of bytes are updated after the END event and each MATCH event.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Amount of received bytes.

◆ nrf_twim_rxd_curr_amount_get()

NRF_STATIC_INLINE size_t nrf_twim_rxd_curr_amount_get ( NRF_TWIM_Type const * p_reg)

Function for getting the amount of received bytes in the current transaction.

Note
Number of bytes is continuously updated during reception.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Amount of received bytes.

◆ nrf_twim_scl_pin_get()

NRF_STATIC_INLINE uint32_t nrf_twim_scl_pin_get ( NRF_TWIM_Type const * p_reg)

Function for retrieving the SCL pin selection.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
SCL pin selection.

◆ nrf_twim_scl_pin_set()

NRF_STATIC_INLINE void nrf_twim_scl_pin_set ( NRF_TWIM_Type * p_reg,
uint32_t pin )

Function for setting the SCL pin.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]pinSCL pin number.

◆ nrf_twim_sda_pin_get()

NRF_STATIC_INLINE uint32_t nrf_twim_sda_pin_get ( NRF_TWIM_Type const * p_reg)

Function for retrieving the SDA pin selection.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
SDA pin selection.

◆ nrf_twim_sda_pin_set()

NRF_STATIC_INLINE void nrf_twim_sda_pin_set ( NRF_TWIM_Type * p_reg,
uint32_t pin )

Function for setting the SDA pin.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]pinSDA pin number.

◆ nrf_twim_shorts_disable()

NRF_STATIC_INLINE void nrf_twim_shorts_disable ( NRF_TWIM_Type * p_reg,
uint32_t mask )

Function for disabling the specified shortcuts.

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

◆ nrf_twim_shorts_enable()

NRF_STATIC_INLINE void nrf_twim_shorts_enable ( NRF_TWIM_Type * p_reg,
uint32_t mask )

Function for enabling the specified shortcuts.

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

◆ nrf_twim_shorts_get()

NRF_STATIC_INLINE uint32_t nrf_twim_shorts_get ( NRF_TWIM_Type const * p_reg)

Function for getting the shortcut setting.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Current shortcut configuration.

◆ nrf_twim_shorts_set()

NRF_STATIC_INLINE void nrf_twim_shorts_set ( NRF_TWIM_Type * p_reg,
uint32_t mask )

Function for setting the specified shortcuts.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]maskShortcuts to be set.

◆ nrf_twim_subscribe_clear()

NRF_STATIC_INLINE void nrf_twim_subscribe_clear ( NRF_TWIM_Type * p_reg,
nrf_twim_task_t task )

Function for clearing the subscribe configuration for a given TWIM task.

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

◆ nrf_twim_subscribe_get()

NRF_STATIC_INLINE uint32_t nrf_twim_subscribe_get ( NRF_TWIM_Type const * p_reg,
nrf_twim_task_t task )

Function for getting the subscribe configuration for a given TWIM task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask for which to read the configuration.
Returns
TWIM subscribe configuration.

◆ nrf_twim_subscribe_set()

NRF_STATIC_INLINE void nrf_twim_subscribe_set ( NRF_TWIM_Type * p_reg,
nrf_twim_task_t task,
uint8_t channel )

Function for setting the subscribe configuration for a given TWIM task.

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

◆ nrf_twim_task_address_get()

NRF_STATIC_INLINE uint32_t nrf_twim_task_address_get ( NRF_TWIM_Type const * p_reg,
nrf_twim_task_t task )

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

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

◆ nrf_twim_task_trigger()

NRF_STATIC_INLINE void nrf_twim_task_trigger ( NRF_TWIM_Type * p_reg,
nrf_twim_task_t task )

Function for activating the specified TWIM task.

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

◆ nrf_twim_tx_buffer_set()

NRF_STATIC_INLINE void nrf_twim_tx_buffer_set ( NRF_TWIM_Type * p_reg,
uint8_t const * p_buffer,
size_t length )

Function for setting the transmit buffer.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_bufferPointer to the buffer with data to send.
[in]lengthMaximum number of data bytes to transmit.

◆ nrf_twim_tx_list_disable()

NRF_STATIC_INLINE void nrf_twim_tx_list_disable ( NRF_TWIM_Type * p_reg)

Function for disabling the TX list feature.

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

◆ nrf_twim_tx_list_enable()

NRF_STATIC_INLINE void nrf_twim_tx_list_enable ( NRF_TWIM_Type * p_reg)

Function for enabling the TX list feature.

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

◆ nrf_twim_tx_maxcnt_set()

NRF_STATIC_INLINE void nrf_twim_tx_maxcnt_set ( NRF_TWIM_Type * p_reg,
size_t length )

Function for setting the transmit buffer length.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]lengthMaximum number of data bytes to transmit.

◆ nrf_twim_tx_ptr_set()

NRF_STATIC_INLINE void nrf_twim_tx_ptr_set ( NRF_TWIM_Type * p_reg,
uint8_t const * p_buffer )

Function for setting the transmit buffer address.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]p_bufferPointer to the buffer with data to send.

◆ nrf_twim_tx_terminate_on_bus_error_check()

NRF_STATIC_INLINE bool nrf_twim_tx_terminate_on_bus_error_check ( NRF_TWIM_Type const * p_reg)

Function for checking if the TX transaction termination on the detection of a BUSERROR event is enabled.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
trueTransaction termination on BUSERROR event is enabled.
falseTransaction termination on BUSERROR event is disabled.

◆ nrf_twim_tx_terminate_on_bus_error_enable_set()

NRF_STATIC_INLINE void nrf_twim_tx_terminate_on_bus_error_enable_set ( NRF_TWIM_Type * p_reg,
bool enable )

Function for enabling TX transaction termination on the detection of a BUSERROR event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]enableTrue if the TX transaction termination is to be enabled, false otherwise.

◆ nrf_twim_txd_amount_get()

NRF_STATIC_INLINE size_t nrf_twim_txd_amount_get ( NRF_TWIM_Type const * p_reg)

Function for getting the amount of transmitted bytes.

Note
In case of NACK error, includes the NACK'ed byte.
Number of bytes are updated after the END event and each MATCH event.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Amount of transmitted bytes.

◆ nrf_twim_txd_curr_amount_get()

NRF_STATIC_INLINE size_t nrf_twim_txd_curr_amount_get ( NRF_TWIM_Type const * p_reg)

Function for getting the amount of transmitted bytes in the current transaction.

Note
Number of bytes is continuously updated during transmission.
Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Amount of transmitted bytes.