HF Interface Wrapper 0.1.0-dev
Embedded C++ hardware abstraction layer
Loading...
Searching...
No Matches
hf_spi_bus_config_t Struct Reference

Platform-agnostic SPI bus configuration for STM32. More...

#include <EspTypes_SPI.h>

Public Member Functions

 hf_spi_bus_config_t () noexcept
 
 hf_spi_bus_config_t () noexcept
 
 hf_spi_bus_config_t (SPI_HandleTypeDef *handle, hf_u32_t timeout_ms=1000, bool dma=false) noexcept
 

Public Attributes

hf_host_id_t host
 SPI host/controller (e.g., HF_SPI2_HOST)
 
hf_pin_num_t mosi_pin
 MOSI pin.
 
hf_pin_num_t miso_pin
 MISO pin.
 
hf_pin_num_t sclk_pin
 SCLK pin.
 
hf_u32_t clock_speed_hz
 Default clock speed in Hz.
 
hf_u8_t dma_channel
 DMA channel (0=auto, 1/2=specific, 0xFF=disabled)
 
hf_timeout_ms_t timeout_ms
 Default timeout for operations (ms)
 
bool use_iomux
 Use IOMUX for better performance.
 
SPI_HandleTypeDef * hal_handle
 Pointer to CubeMX-generated SPI handle.
 
hf_u32_t default_timeout_ms
 Default timeout (ms)
 
bool use_dma
 Use DMA transfers when available.
 

Detailed Description

Platform-agnostic SPI bus configuration for STM32.

Platform-agnostic SPI bus configuration structure for ESP32.

This structure provides all configuration options for initializing an SPI bus on ESP32 platforms, including DMA, IOMUX, and advanced timing options. All fields use project types for portability.

Constructor & Destructor Documentation

◆ hf_spi_bus_config_t() [1/3]

hf_spi_bus_config_t::hf_spi_bus_config_t ( )
inlinenoexcept

◆ hf_spi_bus_config_t() [2/3]

hf_spi_bus_config_t::hf_spi_bus_config_t ( )
inlinenoexcept

◆ hf_spi_bus_config_t() [3/3]

hf_spi_bus_config_t::hf_spi_bus_config_t ( SPI_HandleTypeDef * handle,
hf_u32_t timeout_ms = 1000,
bool dma = false )
inlineexplicitnoexcept

Member Data Documentation

◆ clock_speed_hz

hf_u32_t hf_spi_bus_config_t::clock_speed_hz

Default clock speed in Hz.

◆ default_timeout_ms

hf_u32_t hf_spi_bus_config_t::default_timeout_ms

Default timeout (ms)

◆ dma_channel

hf_spi_bus_config_t::dma_channel

DMA channel (0=auto, 1/2=specific, 0xFF=disabled)

DMA channel (0=auto, 1/2=specific, 0xFF=disabled)

◆ hal_handle

SPI_HandleTypeDef* hf_spi_bus_config_t::hal_handle

Pointer to CubeMX-generated SPI handle.

◆ host

hf_spi_bus_config_t::host

SPI host/controller (e.g., HF_SPI2_HOST)

SPI host/controller (e.g., HF_SPI2_HOST)

◆ miso_pin

hf_spi_bus_config_t::miso_pin

MISO pin.

MISO pin number

◆ mosi_pin

hf_spi_bus_config_t::mosi_pin

MOSI pin.

MOSI pin number

◆ sclk_pin

hf_spi_bus_config_t::sclk_pin

SCLK pin.

SCLK pin number

◆ timeout_ms

hf_spi_bus_config_t::timeout_ms

Default timeout for operations (ms)

Default timeout for operations (ms)

◆ use_dma

bool hf_spi_bus_config_t::use_dma

Use DMA transfers when available.

◆ use_iomux

hf_spi_bus_config_t::use_iomux

Use IOMUX for better performance.

Use IOMUX for better performance


The documentation for this struct was generated from the following files: