Yilin Sun
6baf4427ce
Signed-off-by: Yilin Sun <imi415@imi.moe> |
||
---|---|---|
.. | ||
armgcc | ||
board.c | ||
board.h | ||
board_setup.c | ||
board_setup.h | ||
clock_config.c | ||
clock_config.h | ||
dcd.c | ||
dcd.h | ||
pin_mux.c | ||
pin_mux.h | ||
readme.md | ||
spi_example.c | ||
spi_example_v3_14.xml | ||
tx_lpspi_master.c | ||
tx_lpspi_slave.c | ||
tx_spi.h | ||
tx_user.h |
readme.md
Overview
The example shows how to use SPI driver with Azure RTOS. In this example, one SPI instance used as master and another SPI instance used as slave.
Before running the example, need to connect the master SPI to the slave SPI by a cable.
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
- EVKB-IMXRT1050 board
- Personal Computer
- 4-pin flat cable
Board settings
Remove the resistor R334 and weld 0Ω resistor to R278,R279,R280,R281.
LPSPI:
MASTER connect to SLAVE
Pin Name Board Location Pin Name Board Location
PCS0 J24-1 PCS0 J24-3
SIN J24-2 SOUT J24-4
SOUT J24-9 SIN J24-5
SCK J24-10 SCK J24-6
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.
- 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, the console will output as below.
Start the SPI example
Master transmited:
0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07
0x08 0x09 0x0a 0x0b 0x0c 0x0d 0x0e 0x0f
0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17
0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f
Slave received:
0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07
0x08 0x09 0x0a 0x0b 0x0c 0x0d 0x0e 0x0f
0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17
0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f
Slave transmited:
0xff 0xfe 0xfd 0xfc 0xfb 0xfa 0xf9 0xf8
0xf7 0xf6 0xf5 0xf4 0xf3 0xf2 0xf1 0xf0
0xef 0xee 0xed 0xec 0xeb 0xea 0xe9 0xe8
0xe7 0xe6 0xe5 0xe4 0xe3 0xe2 0xe1 0xe0
Master received:
0xff 0xfe 0xfd 0xfc 0xfb 0xfa 0xf9 0xf8
0xf7 0xf6 0xf5 0xf4 0xf3 0xf2 0xf1 0xf0
0xef 0xee 0xed 0xec 0xeb 0xea 0xe9 0xe8
0xe7 0xe6 0xe5 0xe4 0xe3 0xe2 0xe1 0xe0
Master-to-slave data verified ok. Slave-to-master data verified ok.