MCSPI Loopback

Introduction

This example demonstrates the McSPI RX and TX operation configured in blocking, interrupt mode of operation.

This example sends a known data in the TX mode of length APP_MCSPI_MSGSIZE and then receives the same in RX mode. Internal pad level loopback mode is enabled to receive data. To enable internal pad level loopback mode, D0 pin is configured to both TX Enable as well as RX input pin in the SYSCFG.

When transfer is completed, TX and RX buffer data are compared. If data is matched, test result is passed otherwise failed.

To modify the example to use main domain SPI, refer Accessing main and wakeup domain peripherals from MCU domain

Supported Combinations

Parameter

Value

CPU + OS

mcu-r5fss0-0 freertos

CPU + OS

mcu-r5fss0-0 nortos

CPU + OS

wkup-r5fss0-0 freertos

Toolchain

ti-arm-clang

Boards

am62px-sk

Example folder

examples/drivers/mcspi/mcspi_loopback

Steps to Run the Example

  • When using CCS projects to build, import the CCS project for the required combination and build it using the CCS project menu (see Using SDK with CCS Projects).

  • When using makefiles to build, note the required combination and build using make command (see Using SDK with Makefiles)

Attention

As the wake-up R5 is the device manager, it needs to be started by the SBL. So it can not be loaded through CCS. It should be flashed and booted through SBL.

See Also

MCSPI

Sample Output

Shown below is a sample output when the application is run,

[MCSPI] Loopback example started ...
All tests have passed!!