|
TLE92466ED Driver 2.0.0
API reference
|
Communication Interface base class for TLE92466ED driver. More...
#include <cstdarg>#include <cstdint>#include <span>#include "tle92466ed_expected.hpp"#include "tle92466ed_registers.hpp"Go to the source code of this file.
Classes | |
| struct | tle92466ed::SPIConfig |
| SPI transaction configuration. More... | |
| union | tle92466ed::SPIFrame |
| 32-bit SPI frame structure for TLE92466ED communication More... | |
| struct | tle92466ed::CriticalFaultFlags |
| Helper structure for critical fault frame flags. More... | |
| class | tle92466ed::SpiInterface< Derived > |
| CRTP-based Communication Interface template class. More... | |
Namespaces | |
| namespace | tle92466ed |
Typedefs | |
| template<typename T > | |
| using | tle92466ed::CommResult = tle::expected< T, CommError > |
| Result type for communication interface operations. | |
Communication Interface base class for TLE92466ED driver.
This file defines the hardware abstraction layer (CRTP SpiInterface) for the TLE92466ED Six-Channel Low-Side Solenoid Driver IC. Platform adapters inherit from SpiInterface<Derived> and implement the required transfer and GPIO hooks.
Pipelined SPI reads: register reads are a two-frame protocol. Frame 1 sends the read command; the chip latches the reply and presents it on MISO during frame 2 (a dummy transfer of the same address). Read() and Write() issue both frames through TransferMulti() so CS stays asserted and the bus stays owned across the pair. The dummy is a read of address 0; repeating the accessed address instead makes the part reply with a reserved reply-mode and identity never validates (bench 2026-08-12). On a shared multi-slave bus, an adapter that deasserts CS or releases the bus between the two frames allows another device's transaction to consume the pipeline slot — reads then return zeros or another slave's data.
The TLE92466ED uses 32-bit SPI communication with the following structure: