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_master.c’ includes the LPSPI master code.

  1. LPSPI master send/received data to/from LPSPI slave in edma . (LPSPI Slave using edma to receive/send the data) Hardware requirements =====================

  • Type-C USB cable

  • FRDM-MCXE31B board

  • Personal Computer

Board settings

LPSPI:

INSTANCE1(LPSPI_1)     CONNECTS TO         INSTANCE1(LPSPI_1)
Pin Name   Board Location     Pin Name  Board Location
SOUT        J6 pin 6           SIN       J6 pin 5
SIN         J6 pin 5           SOUT      J6 pin 6
SCK         J6 pin 4           SCK       J6 pin 4
PCS0        J6 pin 3           PCS0      J6 pin 3 
GND         J6 pin 8           GND       J6 pin 8

Prepare the Demo

  1. Connect a USB Type-C cable between the host PC and the MCU-Link USB port on the target board.

  2. 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

  3. Download the program to the target board.

  4. 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.
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:
LPSPI_master --  LPSPI_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 LPSPI master edma transfer completed callback.

This is LPSPI master edma transfer completed callback.


LPSPI 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

 Press any key to run again