Overview
The lpspi_edma_b2b_transfer example shows how to use LPSPI driver in edma way:
In this example , we need two boards, one board used as LPSPI master and another board used as LPSPI slave. The file ‘lpspi_edma_b2b_transfer_slave.c’ includes the LPSPI slave code.
LPSPI master send/received data to/from LPSPI slave in edma . (LPSPI Slave using edma to receive/send the data)
Toolchain supported
IAR embedded Workbench 9.30.1
MCUXpresso 11.6.0
Hardware requirements
Mini/micro USB cable
MCX-N9xx-EVK board
Personal Computer
Board settings
To make the example work, connections needed to be as follows: Note: Jumper setting:
MASTER connect to SLAVE
Pin Name Board Location Pin Name Board Location
SOUT J2 - 8 SIN J2 - 10
SIN J2 - 10 SOUT J2 - 8
SCK J2 - 12 SCK J2 - 12
PCS0 J2 - 6 PCS0 J2 - 6
GND J2 - 14 GND J2 - 14
Other jumpers keep default configuration.
Prepare the Demo
Connect a mini USB cable between the PC host and the MCU-Link USB port on the board.
Open a serial terminal on PC for MCU-Link serial device with these settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the demo.
Running the demo
The following lines are printed to the serial terminal when the demo program is executed.
LPSPI board to board edma example.
Slave example is running...
This is LPSPI slave edma transfer completed callback.
This is LPSPI slave edma transfer completed callback.
Slave receive:
1 2 3 4 5 6 7 8 9 A B C D E F 10
11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20
21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30
31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40
Slave example is running...