CMSIS-Driver Validation  
Driver Validation
 All Files Functions Variables Macros Groups Pages
SPI Validation

SPI driver validation. More...

Content

 Configuration
 
 SPI Server
 
 Tests
 

Description

The SPI validation performs the following tests:

Two Test Modes are available: Loopback and SPI Server.

Test Mode : Loopback

This test mode allows only limited validation of the SPI Driver.
It is recommended that this test mode is used only as a proof that driver is good enough to be tested with the SPI Server.

For this purpose following Default settings should be used:

To enable this mode of testing in the DV_SPI_Config.h configuration file select the Configuration: Test Mode: Loopback setting.

Required pin connection for the Loopback test mode:

spi_loopback_pin_connections.png
Note
In this mode following operations / settings cannot be tested:
  • SPI slave mode
  • Slave Select line functionality
  • operation of the Receive function
  • data content sent by the Send function
  • clock / frame format and bit order settings
  • data bit settings other then: 8, 16, 24 and 32
  • event signaling

Test Mode : SPI Server

This test mode allows extensive validation of the SPI Driver.
Results of the Driver Validation in this test mode are relevant as a proof of driver compliance to the CMSIS-Driver specification.

To perform extensive communication tests, it is required to use an SPI Server running on a dedicated hardware.

To enable this mode of testing in the DV_SPI_Config.h configuration file select the Configuration: Test Mode: SPI Server setting.

Required pin connections for the SPI Server test mode:

spi_server_pin_connections.png
Note
Slave Select line has to be pulled to Vcc by an external pull-up (for example 10 kOhm).
To ensure proper signal quality:
  • keep the connecting wires as short as possible
  • if possible have SCK and GND wires as a twisted pair and MISO, MOSI and Slave Select wires separate from each other
  • ensure a good Ground (GND) connection between SPI Server and DUT
If you experience issues with corrupt data content try reducing bus speed.