ESPHome  2024.10.0
Data Structures | Namespaces | Typedefs | Enumerations
spi.h File Reference

Go to the source code of this file.

Data Structures

class  esphome::spi::NullPin
 A pin to replace those that don't exist. More...
 
class  esphome::spi::Utility
 
class  esphome::spi::SPIDelegate
 
class  esphome::spi::SPIDelegateBitBash
 An implementation of SPI that relies only on software toggling of pins. More...
 
class  esphome::spi::SPIBus
 
class  esphome::spi::SPIComponent
 
class  esphome::spi::SPIClient
 Base class for SPIDevice, un-templated. More...
 
class  esphome::spi::SPIDevice< BIT_ORDER, CLOCK_POLARITY, CLOCK_PHASE, DATA_RATE >
 The SPIDevice is what components using the SPI will create. More...
 

Namespaces

 esphome
 Implementation of SPI Controller mode.
 
 esphome::spi
 

Typedefs

using SPIInterface = SPIClassRP2040 *
 
using esphome::spi::QuadSPIComponent = SPIComponent
 

Enumerations

enum  esphome::spi::SPIBitOrder { esphome::spi::BIT_ORDER_LSB_FIRST, esphome::spi::BIT_ORDER_MSB_FIRST }
 The bit-order for SPI devices. This defines how the data read from and written to the device is interpreted. More...
 
enum  esphome::spi::SPIClockPolarity { esphome::spi::CLOCK_POLARITY_LOW = false, esphome::spi::CLOCK_POLARITY_HIGH = true }
 The SPI clock signal polarity,. More...
 
enum  esphome::spi::SPIClockPhase { esphome::spi::CLOCK_PHASE_LEADING, esphome::spi::CLOCK_PHASE_TRAILING }
 The SPI clock signal phase. More...
 
enum  esphome::spi::SPIMode { esphome::spi::MODE0 = 0, esphome::spi::MODE1 = 1, esphome::spi::MODE2 = 2, esphome::spi::MODE3 = 3 }
 Modes mapping to clock phase and polarity. More...
 
enum  esphome::spi::SPIDataRate : uint32_t {
  esphome::spi::DATA_RATE_1KHZ = 1000, esphome::spi::DATA_RATE_75KHZ = 75000, esphome::spi::DATA_RATE_200KHZ = 200000, esphome::spi::DATA_RATE_1MHZ = 1000000,
  esphome::spi::DATA_RATE_2MHZ = 2000000, esphome::spi::DATA_RATE_4MHZ = 4000000, esphome::spi::DATA_RATE_5MHZ = 5000000, esphome::spi::DATA_RATE_8MHZ = 8000000,
  esphome::spi::DATA_RATE_10MHZ = 10000000, esphome::spi::DATA_RATE_20MHZ = 20000000, esphome::spi::DATA_RATE_40MHZ = 40000000, esphome::spi::DATA_RATE_80MHZ = 80000000
}
 The SPI clock signal frequency, which determines the transfer bit rate/second. More...
 

Typedef Documentation

◆ SPIInterface

typedef spi_host_device_t SPIInterface

Definition at line 16 of file spi.h.