1# SPIM with SPIS non-blocking {#spim_spis_non_blocking}
2
3The sample demonstrates a basic functionality of nrfx_spim and nrfx_spis drivers operating in the non-blocking mode.
4
5## Requirements
6
7The sample supports the following development kits:
8
9| **Board**           | **Support** |
10|---------------------|:-----------:|
11| nrf52dk_nrf52832    |     Yes     |
12| nrf52833dk_nrf52833 |     Yes     |
13| nrf52840dk_nrf52840 |     Yes     |
14| nrf5340dk_nrf5340   |     Yes     |
15| nrf9160dk_nrf9160   |     Yes     |
16
17## Overview
18
19Application initializes nrfx_spim and nrfx_spis drivers and starts operating in the non-blocking mode.
20@p MSG_TO_SEND_MASTER message from @p m_tx_buffer_master is transmitted to @p m_rx_buffer_slave.
21Simultaneously, @p MSG_TO_SEND_SLAVE from @p m_tx_buffer_slave is transmitted to @p m_rx_buffer_master.
22When the transactions are completed both @p spim_handler() and @p spis_handler() are executed.
23The received messages are then read from @p m_rx_buffer_master and @p m_rx_buffer_slave.
24
25> For more information, see **SPIM driver** and **SPIS driver** - **nrfx documentation**.
26
27## Wiring
28
29To run the sample correctly, connect pins as follows:
30* `LOOPBACK_PIN_1A` with `LOOPBACK_PIN_1B`,
31* `LOOPBACK_PIN_2A` with `LOOPBACK_PIN_2B`,
32* `LOOPBACK_PIN_3A` with `LOOPBACK_PIN_3B`,
33* `LOOPBACK_PIN_4A` with `LOOPBACK_PIN_4B`.
34
35> Refer to pin definitions in `common/nrfx_example.h`.
36
37You should monitor the output from the board to check if it is as expected.
38
39## Building and running
40
41To run this sample, build it for the appropriate board and then flash it as per instructions in [Building and running](@ref building_and_running) section.
42
43## Sample output
44
45You should see the following output:
46
47```
48- "Starting nrfx_spim basic non-blocking SPIM with SPIS example."
49- "SPIM finished. Context passed to the handler: >Some context<"
50- "SPIM rx buffer: Nordic"
51- "SPIS finished. Context passed to the handler: >Some context<"
52- "SPIS rx buffer: Semiconductor"
53```
54
55[//]: #
56[Building and running]: <../../../README.md#building-and-running>
57