|
idfxx 1.0.0
Modern C++23 components for ESP-IDF
|
SPI bus configuration. More...
Public Attributes | ||
| union { | ||
| idfxx::gpio mosi = gpio::nc() | ||
| GPIO pin for Master Out Slave In (=spi_d) signal. More... | ||
| idfxx::gpio data0 | ||
| GPIO pin for spi data0 signal in quad/octal mode. More... | ||
| }; | ||
| union { | ||
| idfxx::gpio miso = gpio::nc() | ||
| GPIO pin for Master In Slave Out (=spi_q) signal. More... | ||
| idfxx::gpio data1 | ||
| GPIO pin for spi data1 signal in quad/octal mode. More... | ||
| }; | ||
| idfxx::gpio | sclk = gpio::nc() | |
| GPIO pin for SPI Clock signal. | ||
| union { | ||
| idfxx::gpio quadwp = gpio::nc() | ||
| GPIO pin for WP (Write Protect) signal, or gpio::nc() if not used. More... | ||
| idfxx::gpio data2 | ||
| GPIO pin for spi data2 signal in quad/octal mode, or gpio::nc() if not used. More... | ||
| }; | ||
| union { | ||
| idfxx::gpio quadhd = gpio::nc() | ||
| GPIO pin for HD (Hold) signal, or gpio::nc() if not used. More... | ||
| idfxx::gpio data3 | ||
| GPIO pin for spi data3 signal in quad/octal mode, or gpio::nc() if not used. More... | ||
| }; | ||
| idfxx::gpio | data4 = gpio::nc() | |
| GPIO pin for spi data4 signal in octal mode, or gpio::nc() if not used. | ||
| idfxx::gpio | data5 = gpio::nc() | |
| GPIO pin for spi data5 signal in octal mode, or gpio::nc() if not used. | ||
| idfxx::gpio | data6 = gpio::nc() | |
| GPIO pin for spi data6 signal in octal mode, or gpio::nc() if not used. | ||
| idfxx::gpio | data7 = gpio::nc() | |
| GPIO pin for spi data7 signal in octal mode, or gpio::nc() if not used. | ||
| gpio::level | data_idle_level = gpio::level::low | |
| Data pin output level while no transaction is active. | ||
| size_t | max_transfer_sz = 0 | |
| Maximum transfer size, in bytes (DMA only). | ||
| idfxx::flags< bus_flags > | flags = {} | |
| Abilities of bus to be checked by the driver. | ||
| std::optional< idfxx::core_id > | isr_cpu_id = std::nullopt | |
| Select cpu core to register SPI ISR. | ||
| idfxx::intr_levels | intr_levels = {} | |
| Interrupt priority levels to accept. | ||
| idfxx::flags< idfxx::intr_flag > | intr_flags = {} | |
| Behavioral interrupt flags. | ||
SPI bus configuration.
Definition at line 207 of file master.hpp.
| union { ... } idfxx::spi::bus_config |
| union { ... } idfxx::spi::bus_config |
| union { ... } idfxx::spi::bus_config |
| union { ... } idfxx::spi::bus_config |
| idfxx::gpio idfxx::spi::bus_config::data0 |
GPIO pin for spi data0 signal in quad/octal mode.
Definition at line 210 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data1 |
GPIO pin for spi data1 signal in quad/octal mode.
Definition at line 214 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data2 |
GPIO pin for spi data2 signal in quad/octal mode, or gpio::nc() if not used.
Definition at line 219 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data3 |
GPIO pin for spi data3 signal in quad/octal mode, or gpio::nc() if not used.
Definition at line 223 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data4 = gpio::nc() |
GPIO pin for spi data4 signal in octal mode, or gpio::nc() if not used.
Definition at line 225 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data5 = gpio::nc() |
GPIO pin for spi data5 signal in octal mode, or gpio::nc() if not used.
Definition at line 226 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data6 = gpio::nc() |
GPIO pin for spi data6 signal in octal mode, or gpio::nc() if not used.
Definition at line 227 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::data7 = gpio::nc() |
GPIO pin for spi data7 signal in octal mode, or gpio::nc() if not used.
Definition at line 228 of file master.hpp.
| gpio::level idfxx::spi::bus_config::data_idle_level = gpio::level::low |
Data pin output level while no transaction is active.
Definition at line 230 of file master.hpp.
| idfxx::flags<bus_flags> idfxx::spi::bus_config::flags = {} |
Abilities of bus to be checked by the driver.
Definition at line 236 of file master.hpp.
| idfxx::flags<idfxx::intr_flag> idfxx::spi::bus_config::intr_flags = {} |
Behavioral interrupt flags.
The intr_flag::edge and intr_flag::disabled flags are ignored by the driver. If intr_flag::iram is set, all callbacks must be placed in IRAM.
Definition at line 241 of file master.hpp.
| idfxx::intr_levels idfxx::spi::bus_config::intr_levels = {} |
Interrupt priority levels to accept.
Definition at line 240 of file master.hpp.
| std::optional<idfxx::core_id> idfxx::spi::bus_config::isr_cpu_id = std::nullopt |
Select cpu core to register SPI ISR.
Definition at line 238 of file master.hpp.
| size_t idfxx::spi::bus_config::max_transfer_sz = 0 |
Maximum transfer size, in bytes (DMA only).
A value of 0 selects the 4092-byte default. Larger values allocate additional DMA descriptors (4092 bytes each). Ignored when DMA is disabled; the effective limit is then SOC_SPI_MAXIMUM_BUFFER_SIZE.
Definition at line 231 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::miso = gpio::nc() |
GPIO pin for Master In Slave Out (=spi_q) signal.
Definition at line 213 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::mosi = gpio::nc() |
GPIO pin for Master Out Slave In (=spi_d) signal.
Definition at line 209 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::quadhd = gpio::nc() |
GPIO pin for HD (Hold) signal, or gpio::nc() if not used.
Definition at line 222 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::quadwp = gpio::nc() |
GPIO pin for WP (Write Protect) signal, or gpio::nc() if not used.
Definition at line 218 of file master.hpp.
| idfxx::gpio idfxx::spi::bus_config::sclk = gpio::nc() |
GPIO pin for SPI Clock signal.
Definition at line 216 of file master.hpp.