spi_if.h
Overview
Related Modules:
Description:
Defines standard SPI-specific interfaces for driver development.
A driver needs to use the SPI-specific interfaces for data writing and reading before performing any operations on an SPI-compliant device.
Since:
1.0
Summary
Data Structures
Defines the general SPI device descriptor, which can be used as the unique identifier of an SPI device. When operating an SPI device, you need to specify a descriptor of the SpiDevInfo type, and obtain the handle of the SPI device by calling SpiOpen. |
|
Macros
SPI_CLK_PHASE (1 << 0) |
Indicates the SPI clock phase. The value 0 indicates that data will be sampled on the first clock edge, and 1 indicates that data will be sampled on the second clock edge. |
SPI_CLK_POLARITY (1 << 1) |
Indicates the SPI clock polarity. The value 0 indicates a low-level clock signal in the idle state, and 1 indicates a high-level clock signal in the idle state. |
SPI_MODE_3WIRE (1 << 2) |
Indicates that a single data line is used for both input and output. |
SPI_MODE_LOOP (1 << 3) |
|
SPI_MODE_LSBFE (1 << 4) |
Indicates the SPI data transfer order. The value 0 indicates that data is transferred from the most significant bit (MSB) to the least significant bit (LSB), and 1 indicates the opposite. |
SPI_MODE_NOCS (1 << 5) |
Indicates that there is only one SPI device, and no chip select (CS) is required. |
SPI_MODE_CS_HIGH (1 << 6) |
Indicates that the CS level is high when an SPI device is selected. |
SPI_MODE_READY (1 << 7) |
Indicates that the SPI device is set to low for pausing data transfer. |
Enumerations
SpiTransferMode { SPI_INTERRUPT_TRANSFER = 0, SPI_POLLING_TRANSFER, SPI_DMA_TRANSFER } |
Functions
SpiOpen (const struct SpiDevInfo info) |
struct DevHandle |
SpiTransfer (struct DevHandle handle, struct SpiMsg msgs, uint32_t count) |
|
SpiRead (struct DevHandle handle, uint8_t buf, uint32_t len) |
|
SpiWrite (struct DevHandle handle, uint8_t buf, uint32_t len) |
|