- 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-EK – SAM4L-EK
- VCC – VCC
- NPCS0(PA02,J207/PIN5) – NPCS0(PA02,J207/PIN5)
- MISO(PC04,J207/PIN7) – MISO(PC04,J207/PIN7)
- MOSI(PC05,J207/PIN6) – MOSI(PC05,J207/PIN6)
- SPCK(PC06,J207/PIN8) – SPCK(PC06,J207/PIN8)
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.