- Purpose
This example uses Serial Peripheral Interface (SPI) of one EK board in slave mode to communicate with another EK board's SPI in master mode.
- Requirements
This package can be used with two SAM evaluation kits boards. Please connect the SPI pins from one board to another.
- SAM4L Xplained Pro board – SAM4L Xplained Pro board
- VCC – VCC
- NPCS0(PC03,EXT1/PIN15) – NPCS0(PC03,EXT1/PIN15)
- MISO(PA21,EXT1/PIN17) – MISO(PA21,EXT1/PIN17)
- MOSI(PA22,EXT1/PIN16) – MOSI(PA22,EXT1/PIN16)
- SPCK(PC30,EXT1/PIN18) – SPCK(PC30,EXT1/PIN18)
GND – GND
- Descriptions
This example shows control of the SPI, and how to configure and transfer data with SPI. By default, example runs in SPI slave mode, waiting SPI slave & UART inputs.
The code can be roughly broken down as follows:
-
't' will start SPI transfer test.
-
Configure SPI as master, and set up SPI clock.
-
Send 4-byte CMD_TEST to indicate the start of test.
-
Send several 64-byte blocks, and after transmitting the next block, the content of the last block is returned and checked.
-
Send CMD_STATUS command and wait for the status reports from slave.
-
Send CMD_END command to indicate the end of test.
-
Setup SPI clock for master.
- Usage
- Compile the application.
- Connect the UART port of the evaluation board to the computer and open it in a terminal.
- Settings: 115200 bauds, 8 bits, 1 stop bit, no parity, no flow control.
- Download the program into the evaluation board and run it.
- Upon startup, the application will output the following line on the terminal:
-- Spi Example --
-- xxxxxx-xx
-- Compiled: xxx xx xxxx xx:xx:xx --
- The following traces detail operations on the SPI example, displaying success or error messages depending on the results of the commands.