idfxx 1.0.0
Modern C++23 components for ESP-IDF
Loading...
Searching...
No Matches
idfxx::spi Namespace Reference

SPI driver classes. More...

Classes

struct  bus_config
 SPI bus configuration. More...
 
class  master_bus
 A SPI master bus. More...
 
class  master_device
 A device on a SPI master bus. More...
 
struct  transaction
 SPI transaction descriptor for full-control transactions. More...
 

Enumerations

enum class  host_device : int {
  host_device::spi1 = SPI1_HOST ,
  host_device::spi2 = SPI2_HOST ,
  host_device::spi3 = SPI3_HOST
}
 General purpose SPI Host Controller ID. More...
 
enum class  dma_chan : int {
  dma_chan::disabled = SPI_DMA_DISABLED ,
  dma_chan::ch_auto = SPI_DMA_CH_AUTO
}
 SPI DMA channel selection. More...
 
enum class  bus_flags : uint32_t {
  bus_flags::slave = SPICOMMON_BUSFLAG_SLAVE ,
  bus_flags::master = SPICOMMON_BUSFLAG_MASTER ,
  bus_flags::iomux_pins = SPICOMMON_BUSFLAG_IOMUX_PINS ,
  bus_flags::sclk = SPICOMMON_BUSFLAG_SCLK ,
  bus_flags::miso = SPICOMMON_BUSFLAG_MISO ,
  bus_flags::mosi = SPICOMMON_BUSFLAG_MOSI ,
  bus_flags::dual ,
  bus_flags::wphd = SPICOMMON_BUSFLAG_WPHD ,
  bus_flags::quad = SPICOMMON_BUSFLAG_QUAD ,
  bus_flags::io4_io7 = SPICOMMON_BUSFLAG_IO4_IO7 ,
  bus_flags::octal = SPICOMMON_BUSFLAG_OCTAL ,
  bus_flags::native_pins = SPICOMMON_BUSFLAG_NATIVE_PINS ,
  bus_flags::slp_allow_pd = SPICOMMON_BUSFLAG_SLP_ALLOW_PD
}
 SPI bus capability and configuration flags. More...
 
enum class  device_flags : uint32_t {
  device_flags::txbit_lsbfirst = SPI_DEVICE_TXBIT_LSBFIRST ,
  device_flags::rxbit_lsbfirst = SPI_DEVICE_RXBIT_LSBFIRST ,
  device_flags::bit_lsbfirst = SPI_DEVICE_BIT_LSBFIRST ,
  device_flags::three_wire = SPI_DEVICE_3WIRE ,
  device_flags::positive_cs = SPI_DEVICE_POSITIVE_CS ,
  device_flags::halfduplex = SPI_DEVICE_HALFDUPLEX ,
  device_flags::clk_as_cs = SPI_DEVICE_CLK_AS_CS ,
  device_flags::no_dummy = SPI_DEVICE_NO_DUMMY ,
  device_flags::ddrclk = SPI_DEVICE_DDRCLK ,
  device_flags::no_return_result = SPI_DEVICE_NO_RETURN_RESULT
}
 SPI device capability and configuration flags. More...
 
enum class  trans_flags : uint32_t {
  trans_flags::mode_dio = SPI_TRANS_MODE_DIO ,
  trans_flags::mode_qio = SPI_TRANS_MODE_QIO ,
  trans_flags::mode_oct = SPI_TRANS_MODE_OCT ,
  trans_flags::use_rxdata = SPI_TRANS_USE_RXDATA ,
  trans_flags::use_txdata = SPI_TRANS_USE_TXDATA ,
  trans_flags::multiline_addr = SPI_TRANS_MULTILINE_ADDR ,
  trans_flags::multiline_cmd = SPI_TRANS_MULTILINE_CMD ,
  trans_flags::variable_cmd = SPI_TRANS_VARIABLE_CMD ,
  trans_flags::variable_addr = SPI_TRANS_VARIABLE_ADDR ,
  trans_flags::variable_dummy = SPI_TRANS_VARIABLE_DUMMY ,
  trans_flags::cs_keep_active = SPI_TRANS_CS_KEEP_ACTIVE ,
  trans_flags::dma_buffer_align_manual = SPI_TRANS_DMA_BUFFER_ALIGN_MANUAL ,
  trans_flags::dma_use_psram = SPI_TRANS_DMA_USE_PSRAM
}
 SPI transaction flags. More...
 

Detailed Description

SPI driver classes.