Hardware requirements
Mini USB cable
Two FRDM-K22F boards
Personal Computer
Board settings
SPI one board: Transfer data from one instance to anther instance on the other board. Note: Please separate the connected wires(CLK wire is important), if not, mixed wires may caused electromagnetic interference and data will transfer error.
Master Board Slave Board
INSTANCE0(SPI0) CONNECTS TO INSTANCE1(SPI1)
Pin Name Board Location Pin Name Board Location
SIN J1 pin 11 SOUT J1 pin 16
SOUT J1 pin 16 SIN J1 pin 11
SCK J1 pin 15 SCK J1 pin 15
PCS0 J24 pin 9 PCS0 J24 pin 9
GND J2-14 GND J2-14
Prepare the Demo
Connect a mini USB cable between the PC host and the OpenSDA USB port on the board.
Open a serial terminal on PC for OpenSDA 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.
Reset the SoC and run the project.
Running the demo
When the demo runs successfully, the log would be seen on the OpenSDA terminal like:
DSPI CMSIS driver board to board edma example.
This example use one board as master and another as slave.
Master and slave uses EDMA way. Slave should start first.
Please make sure you make the correct line connection. Basically, the connection is:
DSPI_master -- DSPI_slave
CLK -- CLK
PCS -- PCS
SOUT -- SIN
SIN -- SOUT
GND -- GND
Master transmit:
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
This is DSPI_MasterSignalEvent_t
Master transmit data to slave has completed!
This is DSPI_MasterSignalEvent_t
Master receive data from slave has completed!
DSPI transfer all data matched!
Master received:
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
Input any char to run again