thesis_bldc_controller/Examples/SPISLAVEDMA/SPISLAVEDMA(3)/documentation/spi_slave_dma.rst

62 lines
1.8 KiB
ReStructuredText

SPI Slave DMA
=============
In this application example SPI master transfer "Hello World!" message using DMA
channel 0 to slave. SPI Slave will receive data using DMA channel 3 and store in
the rx_buffer. SPI slave will send again received message back to master using
DMA channel 2. SPI master will receive message using DMA channel 1
Supported evaluation kit
------------------------
- `ATSAME54-XPRO <http://www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=ATSAME54-XPRO>`_
Drivers and Middleware
----------------------
* DMA SPI MASTER
* Synchronous SPI Slave
* DMA
* STDIO Redirect
Interface settings
------------------
- USART
- No parity
- 8-bit character size
- 1 stop bit
- 9600 baud-rate
- SPI MASTER
- Mode 0
- 8-bit character size
- MSB First
- 1000000 baud-rate
- SPI Slave
- Mode 0
- 8-bit character size
- MSB First
- DMA
- DMA Channel 0 - SPI Master TX
- DMA Channel 1 - SPI Master RX
- DMA Channel 2 - SPI Slave TX
- DMA Channel 3 - SPI Slave RX
Hardware Connection
-------------------
======================= ======================
SPI Master(SERCOM4) SPI Slave(SERCOM6)
======================= ======================
PB27 **(MOSI)** PC04 **(MOSI)**
PB26 **(SCK)** PC05 **(SCK)**
PB29 **(MISO)** PC07 **(MISO)**
PB28 **(CS)** PC06 **(CS)**
======================= ======================
Running the demo
----------------
#. Press Download Pack and save the .atzip file
#. Import .atzip file into Atmel Studio 7, File->Import->Atmel Start Project.
#. Build and flash into supported evaluation board
#. Open the serial port in Atmel Data Visualizer or any serial port monitor.
#. Press the Reset button.
#. You should see the **Hello World!** message on console received by SPI slave and SPI master