REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
Loading...
Searching...
No Matches
functions::UMatrixFunction Class Reference

#include <ublock.h>

Inheritance diagram for functions::UMatrixFunction:
Collaboration diagram for functions::UMatrixFunction:

Public Member Functions

 UMatrixFunction (bus::addr_t address)
 
template<size_t num_of_outputs>
bool transfer (const std::array< int8_t, num_of_outputs > &outputs) const
 Convert an output array to data packets and transfer to chip.
 
 DataFunction (bus::addr_t address, uint8_t alt_function_idx, const SPISettings &spiSettings)
 
- Public Member Functions inherited from functions::DataFunction
 DataFunction (bus::addr_t address, uint8_t alt_function_idx, const SPISettings &spiSettings)
 
void begin_communication () const
 
void end_communication () const
 
void transfer (const void *mosi_buf, void *miso_buf, size_t count) const
 
uint8_t transfer8 (uint8_t data_in) const
 
uint16_t transfer16 (uint16_t data_in) const
 
uint32_t transfer32 (uint32_t data_in) const
 
- Public Member Functions inherited from functions::Function
 Function (bus::addr_t address)
 

Static Public Attributes

static const SPISettings DEFAULT_SPI_SETTINGS {4'000'000, MSBFIRST, SPI_MODE2}
 

Additional Inherited Members

- Public Attributes inherited from functions::DataFunction
const SPISettings & spi_settings
 
- Public Attributes inherited from functions::Function
const bus::addr_t address
 
- Static Protected Member Functions inherited from functions::DataFunction
static SPIClass & get_raw_spi ()
 
- Protected Attributes inherited from functions::DataFunction
bus::addr_t alt_function_address
 
bool use_csel = false
 

Detailed Description

Definition at line 14 of file ublock.h.

Constructor & Destructor Documentation

◆ UMatrixFunction()

functions::UMatrixFunction::UMatrixFunction ( bus::addr_t address)
explicit

Definition at line 32 of file ublock.cpp.

References functions::Function::address, DataFunction(), and DEFAULT_SPI_SETTINGS.

Member Function Documentation

◆ DataFunction()

functions::DataFunction::DataFunction ( bus::addr_t address,
uint8_t alt_function_idx,
const SPISettings & spiSettings )

◆ transfer()

template<size_t num_of_outputs>
bool functions::UMatrixFunction::transfer ( const std::array< int8_t, num_of_outputs > & outputs) const
nodiscard

Convert an output array to data packets and transfer to chip.

Timing: ~5microseconds

Definition at line 16 of file ublock.tpl.h.

References functions::DataFunction::transfer().

Member Data Documentation

◆ DEFAULT_SPI_SETTINGS

const SPISettings functions::UMatrixFunction::DEFAULT_SPI_SETTINGS {4'000'000, MSBFIRST, SPI_MODE2}
static

Definition at line 30 of file ublock.h.

Referenced by UMatrixFunction().


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