nRF5 SDK v17.1.0
Macros | Enumerations | Functions
SPIM HAL

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

Macros

#define NRF_SPIM_PIN_NOT_CONNECTED   0xFFFFFFFF
 This value can be used as a parameter for the nrf_spim_pins_set function to specify that a given SPI signal (SCK, MOSI, or MISO) shall not be connected to a physical pin.
 
#define NRF_SPIM_DCX_CNT_ALL_CMD   0xF
 This value specified in the DCX line configuration causes this line to be set low during whole transmission (all transmitted bytes are marked as command bytes). Any lower value causes the DCX line to be switched from low to high after this number of bytes is transmitted (all remaining bytes are marked as data bytes).
 
#define NRF_SPIM_HW_CSN_PRESENT
 Macro for checking if the hardware chip select function is available. More...
 

Enumerations

enum  nrf_spim_task_t {
  NRF_SPIM_TASK_START = offsetof(NRF_SPIM_Type, TASKS_START),
  NRF_SPIM_TASK_STOP = offsetof(NRF_SPIM_Type, TASKS_STOP),
  NRF_SPIM_TASK_SUSPEND = offsetof(NRF_SPIM_Type, TASKS_SUSPEND),
  NRF_SPIM_TASK_RESUME = offsetof(NRF_SPIM_Type, TASKS_RESUME)
}
 SPIM tasks. More...
 
enum  nrf_spim_event_t {
  NRF_SPIM_EVENT_STOPPED = offsetof(NRF_SPIM_Type, EVENTS_STOPPED),
  NRF_SPIM_EVENT_ENDRX = offsetof(NRF_SPIM_Type, EVENTS_ENDRX),
  NRF_SPIM_EVENT_END = offsetof(NRF_SPIM_Type, EVENTS_END),
  NRF_SPIM_EVENT_ENDTX = offsetof(NRF_SPIM_Type, EVENTS_ENDTX),
  NRF_SPIM_EVENT_STARTED = offsetof(NRF_SPIM_Type, EVENTS_STARTED)
}
 SPIM events. More...
 
enum  nrf_spim_short_mask_t {
  NRF_SPIM_SHORT_END_START_MASK = SPIM_SHORTS_END_START_Msk,
  NRF_SPIM_ALL_SHORTS_MASK = SPIM_SHORTS_END_START_Msk
}
 SPIM shortcuts. More...
 
enum  nrf_spim_int_mask_t {
  NRF_SPIM_INT_STOPPED_MASK = SPIM_INTENSET_STOPPED_Msk,
  NRF_SPIM_INT_ENDRX_MASK = SPIM_INTENSET_ENDRX_Msk,
  NRF_SPIM_INT_END_MASK = SPIM_INTENSET_END_Msk,
  NRF_SPIM_INT_ENDTX_MASK = SPIM_INTENSET_ENDTX_Msk,
  NRF_SPIM_INT_STARTED_MASK = SPIM_INTENSET_STARTED_Msk,
  NRF_SPIM_ALL_INTS_MASK
}
 SPIM interrupts. More...
 
enum  nrf_spim_frequency_t {
  NRF_SPIM_FREQ_125K = SPIM_FREQUENCY_FREQUENCY_K125,
  NRF_SPIM_FREQ_250K = SPIM_FREQUENCY_FREQUENCY_K250,
  NRF_SPIM_FREQ_500K = SPIM_FREQUENCY_FREQUENCY_K500,
  NRF_SPIM_FREQ_1M = SPIM_FREQUENCY_FREQUENCY_M1,
  NRF_SPIM_FREQ_2M = SPIM_FREQUENCY_FREQUENCY_M2,
  NRF_SPIM_FREQ_4M = SPIM_FREQUENCY_FREQUENCY_M4,
  NRF_SPIM_FREQ_8M = (int)SPIM_FREQUENCY_FREQUENCY_M8,
  NRF_SPIM_FREQ_16M = SPIM_FREQUENCY_FREQUENCY_M16,
  NRF_SPIM_FREQ_32M = SPIM_FREQUENCY_FREQUENCY_M32
}
 SPI master data rates. More...
 
enum  nrf_spim_mode_t {
  NRF_SPIM_MODE_0,
  NRF_SPIM_MODE_1,
  NRF_SPIM_MODE_2,
  NRF_SPIM_MODE_3
}
 SPI modes. More...
 
enum  nrf_spim_bit_order_t {
  NRF_SPIM_BIT_ORDER_MSB_FIRST = SPIM_CONFIG_ORDER_MsbFirst,
  NRF_SPIM_BIT_ORDER_LSB_FIRST = SPIM_CONFIG_ORDER_LsbFirst
}
 SPI bit orders. More...
 
enum  nrf_spim_csn_pol_t {
  NRF_SPIM_CSN_POL_LOW = SPIM_CSNPOL_CSNPOL_LOW,
  NRF_SPIM_CSN_POL_HIGH = SPIM_CSNPOL_CSNPOL_HIGH
}
 SPI CSN pin polarity. More...
 

Functions

__STATIC_INLINE void nrf_spim_task_trigger (NRF_SPIM_Type *p_reg, nrf_spim_task_t task)
 Function for activating the specified SPIM task. More...
 
__STATIC_INLINE uint32_t nrf_spim_task_address_get (NRF_SPIM_Type *p_reg, nrf_spim_task_t task)
 Function for getting the address of the specified SPIM task register. More...
 
__STATIC_INLINE void nrf_spim_event_clear (NRF_SPIM_Type *p_reg, nrf_spim_event_t event)
 Function for clearing the specified SPIM event. More...
 
__STATIC_INLINE bool nrf_spim_event_check (NRF_SPIM_Type *p_reg, nrf_spim_event_t event)
 Function for retrieving the state of the SPIM event. More...
 
__STATIC_INLINE uint32_t nrf_spim_event_address_get (NRF_SPIM_Type *p_reg, nrf_spim_event_t event)
 Function for getting the address of the specified SPIM event register. More...
 
__STATIC_INLINE void nrf_spim_shorts_enable (NRF_SPIM_Type *p_reg, uint32_t mask)
 Function for enabling the specified shortcuts. More...
 
__STATIC_INLINE void nrf_spim_shorts_disable (NRF_SPIM_Type *p_reg, uint32_t mask)
 Function for disabling the specified shortcuts. More...
 
__STATIC_INLINE uint32_t nrf_spim_shorts_get (NRF_SPIM_Type *p_reg)
 Function for getting the shortcut setting. More...
 
__STATIC_INLINE void nrf_spim_int_enable (NRF_SPIM_Type *p_reg, uint32_t mask)
 Function for enabling the specified interrupts. More...
 
__STATIC_INLINE void nrf_spim_int_disable (NRF_SPIM_Type *p_reg, uint32_t mask)
 Function for disabling the specified interrupts. More...
 
__STATIC_INLINE bool nrf_spim_int_enable_check (NRF_SPIM_Type *p_reg, nrf_spim_int_mask_t spim_int)
 Function for retrieving the state of a given interrupt. More...
 
__STATIC_INLINE void nrf_spim_subscribe_set (NRF_SPIM_Type *p_reg, nrf_spim_task_t task, uint8_t channel)
 Function for setting the subscribe configuration for a given SPIM task. More...
 
__STATIC_INLINE void nrf_spim_subscribe_clear (NRF_SPIM_Type *p_reg, nrf_spim_task_t task)
 Function for clearing the subscribe configuration for a given SPIM task. More...
 
__STATIC_INLINE void nrf_spim_publish_set (NRF_SPIM_Type *p_reg, nrf_spim_event_t event, uint8_t channel)
 Function for setting the publish configuration for a given SPIM event. More...
 
__STATIC_INLINE void nrf_spim_publish_clear (NRF_SPIM_Type *p_reg, nrf_spim_event_t event)
 Function for clearing the publish configuration for a given SPIM event. More...
 
__STATIC_INLINE void nrf_spim_enable (NRF_SPIM_Type *p_reg)
 Function for enabling the SPIM peripheral. More...
 
__STATIC_INLINE void nrf_spim_disable (NRF_SPIM_Type *p_reg)
 Function for disabling the SPIM peripheral. More...
 
__STATIC_INLINE void nrf_spim_pins_set (NRF_SPIM_Type *p_reg, uint32_t sck_pin, uint32_t mosi_pin, uint32_t miso_pin)
 Function for configuring SPIM pins. More...
 
__STATIC_INLINE void nrf_spim_csn_configure (NRF_SPIM_Type *p_reg, uint32_t pin, nrf_spim_csn_pol_t polarity, uint32_t duration)
 Function for configuring the SPIM hardware CSN pin. More...
 
__STATIC_INLINE void nrf_spim_dcx_pin_set (NRF_SPIM_Type *p_reg, uint32_t dcx_pin)
 Function for configuring the SPIM DCX pin. More...
 
__STATIC_INLINE void nrf_spim_dcx_cnt_set (NRF_SPIM_Type *p_reg, uint32_t count)
 Function for configuring the number of command bytes. More...
 
__STATIC_INLINE void nrf_spim_iftiming_set (NRF_SPIM_Type *p_reg, uint32_t rxdelay)
 Function for configuring the extended SPIM interface. More...
 
__STATIC_INLINE void nrf_spim_stallstat_rx_clear (NRF_SPIM_Type *p_reg)
 Function for clearing stall status for RX EasyDMA RAM accesses. More...
 
__STATIC_INLINE bool nrf_spim_stallstat_rx_get (NRF_SPIM_Type *p_reg)
 Function for getting stall status for RX EasyDMA RAM accesses. More...
 
__STATIC_INLINE void nrf_spim_stallstat_tx_clear (NRF_SPIM_Type *p_reg)
 Function for clearing stall status for TX EasyDMA RAM accesses. More...
 
__STATIC_INLINE bool nrf_spim_stallstat_tx_get (NRF_SPIM_Type *p_reg)
 Function for getting stall status for TX EasyDMA RAM accesses. More...
 
__STATIC_INLINE void nrf_spim_frequency_set (NRF_SPIM_Type *p_reg, nrf_spim_frequency_t frequency)
 Function for setting the SPI master data rate. More...
 
__STATIC_INLINE void nrf_spim_tx_buffer_set (NRF_SPIM_Type *p_reg, uint8_t const *p_buffer, size_t length)
 Function for setting the transmit buffer. More...
 
__STATIC_INLINE void nrf_spim_rx_buffer_set (NRF_SPIM_Type *p_reg, uint8_t *p_buffer, size_t length)
 Function for setting the receive buffer. More...
 
__STATIC_INLINE void nrf_spim_configure (NRF_SPIM_Type *p_reg, nrf_spim_mode_t spi_mode, nrf_spim_bit_order_t spi_bit_order)
 Function for setting the SPI configuration. More...
 
__STATIC_INLINE void nrf_spim_orc_set (NRF_SPIM_Type *p_reg, uint8_t orc)
 Function for setting the over-read character. More...
 
__STATIC_INLINE void nrf_spim_tx_list_enable (NRF_SPIM_Type *p_reg)
 Function for enabling the TX list feature. More...
 
__STATIC_INLINE void nrf_spim_tx_list_disable (NRF_SPIM_Type *p_reg)
 Function for disabling the TX list feature. More...
 
__STATIC_INLINE void nrf_spim_rx_list_enable (NRF_SPIM_Type *p_reg)
 Function for enabling the RX list feature. More...
 
__STATIC_INLINE void nrf_spim_rx_list_disable (NRF_SPIM_Type *p_reg)
 Function for disabling the RX list feature. More...
 

Detailed Description

Hardware access layer for managing the SPIM peripheral.

Macro Definition Documentation

#define NRF_SPIM_HW_CSN_PRESENT
Value:
(NRFX_CHECK(SPIM0_FEATURE_HARDWARE_CSN_PRESENT) || \
NRFX_CHECK(SPIM1_FEATURE_HARDWARE_CSN_PRESENT) || \
NRFX_CHECK(SPIM2_FEATURE_HARDWARE_CSN_PRESENT) || \
NRFX_CHECK(SPIM3_FEATURE_HARDWARE_CSN_PRESENT))

Macro for checking if the hardware chip select function is available.

Enumeration Type Documentation

SPI bit orders.

Enumerator
NRF_SPIM_BIT_ORDER_MSB_FIRST 

Most significant bit shifted out first.

NRF_SPIM_BIT_ORDER_LSB_FIRST 

Least significant bit shifted out first.

SPI CSN pin polarity.

Enumerator
NRF_SPIM_CSN_POL_LOW 

Active low (idle state high).

NRF_SPIM_CSN_POL_HIGH 

Active high (idle state low).

SPIM events.

Enumerator
NRF_SPIM_EVENT_STOPPED 

SPI transaction has stopped.

NRF_SPIM_EVENT_ENDRX 

End of RXD buffer reached.

NRF_SPIM_EVENT_END 

End of RXD buffer and TXD buffer reached.

NRF_SPIM_EVENT_ENDTX 

End of TXD buffer reached.

NRF_SPIM_EVENT_STARTED 

Transaction started.

SPI master data rates.

Enumerator
NRF_SPIM_FREQ_125K 

125 kbps.

NRF_SPIM_FREQ_250K 

250 kbps.

NRF_SPIM_FREQ_500K 

500 kbps.

NRF_SPIM_FREQ_1M 

1 Mbps.

NRF_SPIM_FREQ_2M 

2 Mbps.

NRF_SPIM_FREQ_4M 

4 Mbps.

NRF_SPIM_FREQ_8M 

8 Mbps.

NRF_SPIM_FREQ_16M 

16 Mbps.

NRF_SPIM_FREQ_32M 

32 Mbps.

SPIM interrupts.

Enumerator
NRF_SPIM_INT_STOPPED_MASK 

Interrupt on STOPPED event.

NRF_SPIM_INT_ENDRX_MASK 

Interrupt on ENDRX event.

NRF_SPIM_INT_END_MASK 

Interrupt on END event.

NRF_SPIM_INT_ENDTX_MASK 

Interrupt on ENDTX event.

NRF_SPIM_INT_STARTED_MASK 

Interrupt on STARTED event.

NRF_SPIM_ALL_INTS_MASK 

All SPIM interrupts.

SPI modes.

Enumerator
NRF_SPIM_MODE_0 

SCK active high, sample on leading edge of clock.

NRF_SPIM_MODE_1 

SCK active high, sample on trailing edge of clock.

NRF_SPIM_MODE_2 

SCK active low, sample on leading edge of clock.

NRF_SPIM_MODE_3 

SCK active low, sample on trailing edge of clock.

SPIM shortcuts.

Enumerator
NRF_SPIM_SHORT_END_START_MASK 

Shortcut between END event and START task.

NRF_SPIM_ALL_SHORTS_MASK 

All SPIM shortcuts.

SPIM tasks.

Enumerator
NRF_SPIM_TASK_START 

Start SPI transaction.

NRF_SPIM_TASK_STOP 

Stop SPI transaction.

NRF_SPIM_TASK_SUSPEND 

Suspend SPI transaction.

NRF_SPIM_TASK_RESUME 

Resume SPI transaction.

Function Documentation

__STATIC_INLINE void nrf_spim_configure ( NRF_SPIM_Type *  p_reg,
nrf_spim_mode_t  spi_mode,
nrf_spim_bit_order_t  spi_bit_order 
)

Function for setting the SPI configuration.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]spi_modeSPI mode.
[in]spi_bit_orderSPI bit order.
__STATIC_INLINE void nrf_spim_csn_configure ( NRF_SPIM_Type *  p_reg,
uint32_t  pin,
nrf_spim_csn_pol_t  polarity,
uint32_t  duration 
)

Function for configuring the SPIM hardware CSN pin.

If this signal is not needed, pass the NRF_SPIM_PIN_NOT_CONNECTED value instead of its pin number.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]pinCSN pin number.
[in]polarityCSN pin polarity.
[in]durationMinimum duration between the edge of CSN and the edge of SCK and minimum duration of CSN must stay unselected between transactions. The value is specified in number of 64 MHz clock cycles (15.625 ns).
__STATIC_INLINE void nrf_spim_dcx_cnt_set ( NRF_SPIM_Type *  p_reg,
uint32_t  count 
)

Function for configuring the number of command bytes.

Maximum value available for dividing the transmitted bytes into command bytes and data bytes is NRF_SPIM_DCX_CNT_ALL_CMD - 1. The NRF_SPIM_DCX_CNT_ALL_CMD value passed as the count parameter causes all transmitted bytes to be marked as command bytes.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]countNumber of command bytes preceding the data bytes.
__STATIC_INLINE void nrf_spim_dcx_pin_set ( NRF_SPIM_Type *  p_reg,
uint32_t  dcx_pin 
)

Function for configuring the SPIM DCX pin.

If this signal is not needed, pass the NRF_SPIM_PIN_NOT_CONNECTED value instead of its pin number.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]dcx_pinDCX pin number.
__STATIC_INLINE void nrf_spim_disable ( NRF_SPIM_Type *  p_reg)

Function for disabling the SPIM peripheral.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE void nrf_spim_enable ( NRF_SPIM_Type *  p_reg)

Function for enabling the SPIM peripheral.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE uint32_t nrf_spim_event_address_get ( NRF_SPIM_Type *  p_reg,
nrf_spim_event_t  event 
)

Function for getting the address of the specified SPIM 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.
__STATIC_INLINE bool nrf_spim_event_check ( NRF_SPIM_Type *  p_reg,
nrf_spim_event_t  event 
)

Function for retrieving the state of the SPIM 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.
__STATIC_INLINE void nrf_spim_event_clear ( NRF_SPIM_Type *  p_reg,
nrf_spim_event_t  event 
)

Function for clearing the specified SPIM event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to be cleared.
__STATIC_INLINE void nrf_spim_frequency_set ( NRF_SPIM_Type *  p_reg,
nrf_spim_frequency_t  frequency 
)

Function for setting the SPI master data rate.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]frequencySPI frequency.
__STATIC_INLINE void nrf_spim_iftiming_set ( NRF_SPIM_Type *  p_reg,
uint32_t  rxdelay 
)

Function for configuring the extended SPIM interface.

Parameters
p_regPointer to the structure of registers of the peripheral.
rxdelaySample delay for input serial data on MISO, specified in 64 MHz clock cycles (15.625 ns) from the sampling edge of SCK.
__STATIC_INLINE void nrf_spim_int_disable ( NRF_SPIM_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.
__STATIC_INLINE void nrf_spim_int_enable ( NRF_SPIM_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.
__STATIC_INLINE bool nrf_spim_int_enable_check ( NRF_SPIM_Type *  p_reg,
nrf_spim_int_mask_t  spim_int 
)

Function for retrieving the state of a given interrupt.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]spim_intInterrupt to be checked.
Return values
trueThe interrupt is enabled.
falseThe interrupt is not enabled.
__STATIC_INLINE void nrf_spim_orc_set ( NRF_SPIM_Type *  p_reg,
uint8_t  orc 
)

Function for setting the over-read character.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]orcOver-read character that is clocked out in case of an over-read of the TXD buffer.
__STATIC_INLINE void nrf_spim_pins_set ( NRF_SPIM_Type *  p_reg,
uint32_t  sck_pin,
uint32_t  mosi_pin,
uint32_t  miso_pin 
)

Function for configuring SPIM pins.

If a given signal is not needed, pass the NRF_SPIM_PIN_NOT_CONNECTED value instead of its pin number.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]sck_pinSCK pin number.
[in]mosi_pinMOSI pin number.
[in]miso_pinMISO pin number.
__STATIC_INLINE void nrf_spim_publish_clear ( NRF_SPIM_Type *  p_reg,
nrf_spim_event_t  event 
)

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

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent for which to clear the configuration.
__STATIC_INLINE void nrf_spim_publish_set ( NRF_SPIM_Type *  p_reg,
nrf_spim_event_t  event,
uint8_t  channel 
)

Function for setting the publish configuration for a given SPIM 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.
__STATIC_INLINE void nrf_spim_rx_buffer_set ( NRF_SPIM_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.
__STATIC_INLINE void nrf_spim_rx_list_disable ( NRF_SPIM_Type *  p_reg)

Function for disabling the RX list feature.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE void nrf_spim_rx_list_enable ( NRF_SPIM_Type *  p_reg)

Function for enabling the RX list feature.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE void nrf_spim_shorts_disable ( NRF_SPIM_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.
__STATIC_INLINE void nrf_spim_shorts_enable ( NRF_SPIM_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.
__STATIC_INLINE uint32_t nrf_spim_shorts_get ( NRF_SPIM_Type *  p_reg)

Function for getting the shortcut setting.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Returns
Current shortcut configuration.
__STATIC_INLINE void nrf_spim_stallstat_rx_clear ( NRF_SPIM_Type *  p_reg)

Function for clearing stall status for RX EasyDMA RAM accesses.

Parameters
p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE bool nrf_spim_stallstat_rx_get ( NRF_SPIM_Type *  p_reg)

Function for getting stall status for RX EasyDMA RAM accesses.

Parameters
p_regPointer to the structure of registers of the peripheral.
Returns
Stall status of RX EasyDMA RAM accesses.
__STATIC_INLINE void nrf_spim_stallstat_tx_clear ( NRF_SPIM_Type *  p_reg)

Function for clearing stall status for TX EasyDMA RAM accesses.

Parameters
p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE bool nrf_spim_stallstat_tx_get ( NRF_SPIM_Type *  p_reg)

Function for getting stall status for TX EasyDMA RAM accesses.

Parameters
p_regPointer to the structure of registers of the peripheral.
Returns
Stall status of TX EasyDMA RAM accesses.
__STATIC_INLINE void nrf_spim_subscribe_clear ( NRF_SPIM_Type *  p_reg,
nrf_spim_task_t  task 
)

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

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask for which to clear the configuration.
__STATIC_INLINE void nrf_spim_subscribe_set ( NRF_SPIM_Type *  p_reg,
nrf_spim_task_t  task,
uint8_t  channel 
)

Function for setting the subscribe configuration for a given SPIM 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.
__STATIC_INLINE uint32_t nrf_spim_task_address_get ( NRF_SPIM_Type *  p_reg,
nrf_spim_task_t  task 
)

Function for getting the address of the specified SPIM 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.
__STATIC_INLINE void nrf_spim_task_trigger ( NRF_SPIM_Type *  p_reg,
nrf_spim_task_t  task 
)

Function for activating the specified SPIM task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskTask to be activated.
__STATIC_INLINE void nrf_spim_tx_buffer_set ( NRF_SPIM_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.
__STATIC_INLINE void nrf_spim_tx_list_disable ( NRF_SPIM_Type *  p_reg)

Function for disabling the TX list feature.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
__STATIC_INLINE void nrf_spim_tx_list_enable ( NRF_SPIM_Type *  p_reg)

Function for enabling the TX list feature.

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

Documentation feedback | Developer Zone | Subscribe | Updated