1# SPIM basic non-blocking {#spim_basic_non_blocking}
2
3The sample demonstrates a basic functionality of the nrfx_spim driver 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 the nrfx_spim driver and starts operating in the non-blocking mode.
20A specified message ( @p MSG_TO_SEND ) from @p m_tx_buffer is transmitted.
21When the transfer finishes @p spim_handler(), the received message is read from @p m_rx_buffer.
22
23> For more information, see **SPIM driver - nrfx documentation**.
24
25## Wiring
26
27To run the sample correctly, connect pins as follows:
28* `LOOPBACK_PIN_1A` with `LOOPBACK_PIN_1B`.
29
30> Refer to pin definitions in `common/nrfx_example.h`.
31
32You should monitor the output from the board to check if it is as expected.
33
34## Building and running
35
36To 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.
37## Sample output
38
39You should see the following output:
40
41```
42- "Starting nrfx_spim basic non-blocking example."
43- "SPIM finished. Context passed to the handler: >Some context<"
44- "Message received: Nordic Semiconductor"
45```
46
47[//]: #
48[Building and running]: <../../../README.md#building-and-running>
49