|
Zephyr API Documentation 4.3.0-rc1
A Scalable Open Source RTOS
|
SPI Chip Select control structure. More...
#include <zephyr/drivers/spi.h>
Data Fields | |
| union { | |
| struct { | |
| struct gpio_dt_spec gpio | |
| GPIO devicetree specification of CS GPIO. More... | |
| uint32_t delay | |
| Delay in microseconds to wait before starting the transmission and before releasing the CS line. More... | |
| } | |
| struct { | |
| uint32_t setup_ns | |
| CS enable lead time, i.e. More... | |
| uint32_t hold_ns | |
| CS enable lag time, i.e. More... | |
| } | |
| }; | |
| bool | cs_is_gpio |
SPI Chip Select control structure.
This can be used to control a CS line via a GPIO line, instead of using the controller internal CS logic.
| union { ... } spi_cs_control |
| bool spi_cs_control::cs_is_gpio |
| uint32_t spi_cs_control::delay |
Delay in microseconds to wait before starting the transmission and before releasing the CS line.
| struct gpio_dt_spec spi_cs_control::gpio |
GPIO devicetree specification of CS GPIO.
The device pointer can be set to NULL to fully inhibit CS control if necessary. The GPIO flags GPIO_ACTIVE_LOW/GPIO_ACTIVE_HIGH should be equivalent to SPI_CS_ACTIVE_HIGH/SPI_CS_ACTIVE_LOW options in struct spi_config.
| uint32_t spi_cs_control::hold_ns |
CS enable lag time, i.e.
how long should the CS be asserted after the last clock, before the CS de-asserts. Specified in nanoseconds.
| uint32_t spi_cs_control::setup_ns |
CS enable lead time, i.e.
how long should the CS be asserted before the first clock. Specified in nanoseconds.