MCUXpresso_MIMXRT1021xxxxx/boards/evkmimxrt1020/driver_examples/lpspi/interrupt
Yilin Sun 763d32be90
Updated SDK to v2.15.000
Signed-off-by: Yilin Sun <imi415@imi.moe>
2024-03-15 22:23:36 +08:00
..
armgcc Updated SDK to v2.15.000 2024-03-15 22:23:36 +08:00
board.c Updated SDK to v2.15.000 2024-03-15 22:23:36 +08:00
board.h Updated SDK to v2.15.000 2024-03-15 22:23:36 +08:00
clock_config.c Updated to SDK v2.14.0 2023-08-31 23:30:31 +08:00
clock_config.h Updated to SDK v2.14.0 2023-08-31 23:30:31 +08:00
dcd.c Initial SDK v2.12.0 2022-08-23 23:00:33 +08:00
dcd.h Initial SDK v2.12.0 2022-08-23 23:00:33 +08:00
evkmimxrt1020_sdram_init.jlinkscript Initial SDK v2.12.0 2022-08-23 23:00:33 +08:00
lpspi_interrupt_v3_14.xml Updated SDK to v2.15.000 2024-03-15 22:23:36 +08:00
lpspi_interrupt.c Updated to SDK v2.14.0 2023-08-31 23:30:31 +08:00
pin_mux.c Initial SDK v2.12.0 2022-08-23 23:00:33 +08:00
pin_mux.h Initial SDK v2.12.0 2022-08-23 23:00:33 +08:00
readme.md Updated SDK to v2.15.000 2024-03-15 22:23:36 +08:00

Overview

The lpspi_functional_interrupt example shows how to use LPSPI driver in interrupt way:

In this example , one lpspi instance used as LPSPI master and another lpspi instance used as LPSPI slave .

  1. LPSPI master send/received data to/from LPSPI slave in interrupt . (LPSPI Slave using interrupt to receive/send the data)

SDK version

  • Version: 2.15.000

Toolchain supported

  • IAR embedded Workbench 9.40.1
  • Keil MDK 5.38.1
  • GCC ARM Embedded 12.2
  • MCUXpresso 11.8.0

Hardware requirements

  • Mini/micro USB cable
  • EVK-MIMXRT1020 board
  • Personal Computer

Board settings

LPSPI:

       MASTER           connect to           SLAVE
Pin Name   Board Location     Pin Name    Board Location
SOUT       J18-6                SIN       J19-5
SIN        J18-5                SOUT      J19-4
SCK        J18-3                SCK       J19-6
PCS0       J18-4                PCS0      J19-3

Prepare the Demo

  1. Connect a mini USB cable between the PC host and the OpenSDA USB port on the board.
  2. 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
  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

When the example runs successfully, you can see the similar information from the terminal as below.

LPSPI functional interrupt example start.

This example use one lpspi instance as master and another as slave on one board.

Master uses interrupt way and slave uses interrupt way.

Note that some LPSPI instances interrupt is in INTMUX ,you should set the intmux when you porting this example accordingly

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

LPSPI transfer all data matched!

End of example.

Note: To debug in qspiflash, following steps are needed:

  1. Select the flash target and compile.
  2. Set the SW8: 1 off 2 off 3 on 4 off, then power on the board and connect USB cable to J23.
  3. Start debugging in IDE.
    • Keil: Click "Download (F8)" to program the image to qspiflash first then clicking "Start/Stop Debug Session (Ctrl+F5)" to start debugging.