|
REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
|
Loading...
Searching...
No Matches
mblock_mul.cpp
Go to the documentation of this file.
16blocks::MMulBlock *blocks::MMulBlock::from_entity_classifier(entities::EntityClassifier classifier,
18 if (!classifier or classifier.class_enum != CLASS_ or classifier.type != static_cast<uint8_t>(TYPE))
35 auto *new_block = new MMulBlock_FullAutoCalibration(slot, new MMulBlockHAL_V_1_1_X(block_address));
40 auto *new_block = new MMulBlock_FullAutoCalibration(slot, new MMulBlockHAL_V_1_M1_X(block_address));
66 cluster->add_constant(UBlockHAL::Transmission_Mode::POS_REF, lhs_lane, lhs, slot_to_global_io_index(lhs_lane));
67 cluster->add_constant(UBlockHAL::Transmission_Mode::POS_REF, rhs_lane, rhs, slot_to_global_io_index(rhs_lane));
165UnitResult blocks::MMulBlock_FullAutoCalibration::calibrate(platform::Cluster *cluster, carrier::Carrier *carrier) {
175 cluster->add_constant(UBlockHAL::Transmission_Mode::POS_REF, lhs_lane, 1.0, slot_to_global_io_index(lhs_lane));
206 : MMulBlockHAL_Parent(block_address, 7), f_overload_flags_reset(bus::address_from_tuple(block_address, 3)),
229bool blocks::MMulBlockHAL_V_1_0_X::write_calibration_input_offsets(uint8_t idx, uint16_t offset_x,
235bool blocks::MMulBlockHAL_V_1_0_X::write_calibration_output_offset(uint8_t idx, uint16_t offset_z) {
244 : MMulBlockHAL_V_1_0_X(block_address), f_gain_ch0_1(bus::replace_function_idx(block_address, 6), 7),
257 : MMulBlockHAL_V_1_0_X(block_address), f_gain(bus::replace_function_idx(block_address, 6), 7) {}
bool write_calibration_output_offset(uint8_t idx, uint16_t offset_z) override
Definition mblock_mul.cpp:235
const functions::TriggerFunction f_overload_flags_reset
Definition mblock_mul.h:26
std::bitset< 8 > read_overload_flags() override
Definition mblock_mul.cpp:239
void reset_overload_flags() override
Definition mblock_mul.cpp:227
const functions::SR74HC16X f_overload_flags
Definition mblock_mul.h:27
MMulBlockHAL_V_1_0_X(bus::addr_t block_address)
Definition mblock_mul.cpp:205
const functions::DAC60508 f_calibration_dac_0
Definition mblock_mul.h:28
bool write_calibration_input_offsets(uint8_t idx, uint16_t offset_x, uint16_t offset_y) override
Definition mblock_mul.cpp:229
const functions::DAC60508 f_calibration_dac_1
Definition mblock_mul.h:29
MMulBlockHAL_V_1_1_X(bus::addr_t block_address)
Definition mblock_mul.cpp:256
bool write_calibration_gain(uint8_t idx, uint8_t gain) override
Definition mblock_mul.cpp:259
MMulBlockHAL_V_1_M1_X(bus::addr_t block_address)
Definition mblock_mul.cpp:243
bool write_calibration_gain(uint8_t idx, uint8_t gain) override
Definition mblock_mul.cpp:247
MMulBlock_FullAutoCalibration(SLOT slot, blocks::MMulBlockHAL_FullAutoCalibration *hardware)
Definition mblock_mul.cpp:149
UnitResult write_calibration_to_hardware() override
Definition mblock_mul.cpp:153
MMulBlockHAL_FullAutoCalibration * hardware
Definition mblock_mul.h:120
UnitResult calibrate(platform::Cluster *cluster, carrier::Carrier *carrier) override
Definition mblock_mul.cpp:165
entities::EntitySharedHardware< MMulBlockHAL > MMulBlockHAL_Parent
Definition mblock_mul.h:17