CRTP SPI communication adapter for MAX22200 using BaseSpi and BaseGpio.
More...
#include <Max22200Handler.h>
|
| | HalSpiMax22200Comm (BaseSpi &spi, BaseGpio &enable, BaseGpio &cmd, BaseGpio *fault=nullptr) noexcept |
| | Construct the SPI adapter.
|
| |
|
| bool | Initialize () noexcept |
| |
| bool | Transfer (const uint8_t *tx_data, uint8_t *rx_data, size_t length) noexcept |
| |
| bool | SetChipSelect (bool state) noexcept |
| |
| bool | Configure (uint32_t speed_hz, uint8_t mode, bool msb_first=true) noexcept |
| |
| bool | IsReady () const noexcept |
| |
| void | DelayUs (uint32_t us) noexcept |
| |
| void | GpioSet (max22200::CtrlPin pin, max22200::GpioSignal signal) noexcept |
| |
| bool | GpioRead (max22200::CtrlPin pin, max22200::GpioSignal &signal) noexcept |
| |
CRTP SPI communication adapter for MAX22200 using BaseSpi and BaseGpio.
Implements all methods required by max22200::SpiInterface<HalSpiMax22200Comm>. Handles the two-phase CMD-pin SPI protocol.
◆ HalSpiMax22200Comm()
| HalSpiMax22200Comm::HalSpiMax22200Comm |
( |
BaseSpi & | spi, |
|
|
BaseGpio & | enable, |
|
|
BaseGpio & | cmd, |
|
|
BaseGpio * | fault = nullptr ) |
|
noexcept |
Construct the SPI adapter.
- Parameters
-
| spi | Reference to pre-configured BaseSpi (Mode 0, 8-bit). |
| enable | BaseGpio for ENABLE pin (active HIGH). |
| cmd | BaseGpio for CMD pin (HIGH=command phase, LOW=data phase). |
| fault | Optional BaseGpio for nFAULT (active LOW, open-drain). |
◆ Configure()
| bool HalSpiMax22200Comm::Configure |
( |
uint32_t | speed_hz, |
|
|
uint8_t | mode, |
|
|
bool | msb_first = true ) |
|
noexcept |
◆ DelayUs()
| void HalSpiMax22200Comm::DelayUs |
( |
uint32_t | us | ) |
|
|
noexcept |
◆ GpioRead()
| bool HalSpiMax22200Comm::GpioRead |
( |
max22200::CtrlPin | pin, |
|
|
max22200::GpioSignal & | signal ) |
|
noexcept |
◆ GpioSet()
| void HalSpiMax22200Comm::GpioSet |
( |
max22200::CtrlPin | pin, |
|
|
max22200::GpioSignal | signal ) |
|
noexcept |
◆ Initialize()
| bool HalSpiMax22200Comm::Initialize |
( |
| ) |
|
|
noexcept |
◆ IsReady()
| bool HalSpiMax22200Comm::IsReady |
( |
| ) |
const |
|
noexcept |
◆ SetChipSelect()
| bool HalSpiMax22200Comm::SetChipSelect |
( |
bool | state | ) |
|
|
noexcept |
◆ Transfer()
| bool HalSpiMax22200Comm::Transfer |
( |
const uint8_t * | tx_data, |
|
|
uint8_t * | rx_data, |
|
|
size_t | length ) |
|
noexcept |
◆ cmd_
| BaseGpio& HalSpiMax22200Comm::cmd_ |
|
private |
◆ enable_
| BaseGpio& HalSpiMax22200Comm::enable_ |
|
private |
◆ fault_
| BaseGpio* HalSpiMax22200Comm::fault_ |
|
private |
◆ initialized_
| bool HalSpiMax22200Comm::initialized_ {false} |
|
private |
◆ spi_
| BaseSpi& HalSpiMax22200Comm::spi_ |
|
private |
The documentation for this class was generated from the following files: