2.93 Quad Serial Peripheral Interface (QSPI)
This Plib implements software abstraction for QSPI Peripheral.
Note: Not all APIs maybe implemented. See the specific device
family section for available APIs.
Library Interface
Quad Serial Peripheral Interface peripheral library provides the following interfaces:
Functions
QSPI Mode:
| Name | Description |
|---|---|
| QSPIx_Initialize | Initializes given instance of the QSPI peripheral |
| QSPIx_CommandWrite | Writes command to QSPI slave device |
| QSPIx_RegisterRead | Reads particular register of QSPI slave device |
| QSPIx_RegisterWrite | Writes to particular register of QSPI slave device |
| QSPIx_MemoryRead | Reads from the specified address of the serial flash device |
| QSPIx_MemoryWrite | Writes to the specified address of the serial flash device |
SPI Mode:
| Name | Description |
|---|---|
| QSPIx_Initialize | Initializes given instance of the QSPI peripheral |
| QSPIx_TransferSetup | Setup QSPI operational parameters as desired by the client. |
| QSPIx_WriteRead | Write and Read data on QSPI peripheral. |
| QSPIx_Write | Write data on QSPI peripheral. |
| QSPIx_Read | Read data on QSPI peripheral. |
| QSPIx_IsBusy | Returns transfer status of QSPI peripheral. |
| QSPIx_CallbackRegister | Allows application to register callback with PLIB. |
Data types and constants
| Name | Type | Description |
|---|---|---|
| QSPI_ADDRESS_LENGTH | Enum | Defines the data type to specify address length |
| QSPI_LANE_WIDTH | Enum | Defines the data type to specify lane width |
| QSPI_OPTION_LENGTH | Enum | Defines the data type to specify option length |
| QSPI_PROTOCOL_TYPE | Enum | Defines the QSPI Protocol type - STD_SPI, TWIN_QUAD, OCTAFLASH and HYPERFLASH |
| QSPI_CLOCK_PHASE | Enum | Identifies QSPI Clock Phase Options |
| QSPI_CLOCK_POLARITY | Enum | Identifies QSPI Clock Polarity Options |
| QSPI_DATA_BITS | Enum | Identifies SPI bits per transfer |
| QSPI_TRANSFER_SETUP | Struct | Identifies the setup parameters which can be changed dynamically |
| qspi_command_xfer_t | Struct | Defines the data type for the QSPI commands transfer |
| qspi_register_xfer_t | Struct | Defines the data type for the QSPI register data transfer |
| qspi_memory_xfer_t | Struct | Defines the data type for the QSPI memory transfer |
| QSPI_CALLBACK | Typedef | Pointer to a Callback function. This is used in SPI mode only |
