REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
Loading...
Searching...
No Matches
platform::interfaces::FrontPlaneSignalGenerator Class Reference

#include <signal_generator.h>

Inheritance diagram for platform::interfaces::FrontPlaneSignalGenerator:
Collaboration diagram for platform::interfaces::FrontPlaneSignalGenerator:

Public Member Functions

 FrontPlaneSignalGenerator (SignalGeneratorHAL *hardware)
 FrontPlaneSignalGenerator.
 
bool init () override
 Initializes the signal generator and puts it to sleep.
 
bool is_installed () const override
 Returns wether an signal generator module is actually installed and active.
 
void set_frequency (float frequency) override
 Sets the frequency of the sine / triangle output in Hz.
 
void set_phase (float phase) override
 Sets the phase of the frequency outputs synchronised to the reset pin.
 
void set_wave_form (WaveForm wave_form) override
 Sets the wave form of the function generator output.
 
bool set_amplitude (float amplitude) override
 Sets the amplitude of the sine or triangle wave in machine units.
 
bool set_square_voltage_levels (float low, float high) override
 Sets the lower and upper value of the square output in machine units.
 
bool set_square_voltage_low (float low) override
 Sets the lower value of the square output in machine units.
 
bool set_square_voltage_high (float high) override
 Sets the upper value of the square output in machine units.
 
bool set_offset (float offset) override
 Sets the constant offset of the sine or triangle output in machine units.
 
float get_real_frequency () const override
 Returns the actually set frequency of the function generator, containing rounding errors.
 
float get_real_phase () const override
 Returns the actually set phase of the function generator, containing rounding errors.
 
float get_frequency () const override
 
float get_phase () const override
 
WaveForm get_wave_form () const override
 
float get_amplitude () const override
 
float get_square_voltage_low () const override
 
float get_square_voltage_high () const override
 
float get_offset () const override
 
bool get_sleep () const override
 
float get_dac_out0 () const override
 
float get_dac_out1 () const override
 
void sleep () override
 Sets the sine / triangle output of the function generator to zero.
 
void awake () override
 Resumes outputs of the function generator to regular operation, according to the previously specified frequencies.
 
bool set_dac_out0 (float value) override
 Writes the DACout0 constant voltage output. Possible values are: [-2V, 2V].
 
bool set_dac_out1 (float value) override
 Writes the DACout1 constant voltage output. Possible values are: [-2V, 2V].
 
utils::status write_to_hardware () override
 

Detailed Description

Definition at line 163 of file signal_generator.h.

Constructor & Destructor Documentation

◆ FrontPlaneSignalGenerator()

platform::interfaces::FrontPlaneSignalGenerator::FrontPlaneSignalGenerator ( SignalGeneratorHAL * hardware)

FrontPlaneSignalGenerator.

Definition at line 110 of file signal_generator.cpp.

Member Function Documentation

◆ awake()

void platform::interfaces::FrontPlaneSignalGenerator::awake ( )
override

Resumes outputs of the function generator to regular operation, according to the previously specified frequencies.

Definition at line 188 of file signal_generator.cpp.

◆ get_amplitude()

float platform::interfaces::FrontPlaneSignalGenerator::get_amplitude ( ) const
override

Definition at line 170 of file signal_generator.cpp.

◆ get_dac_out0()

float platform::interfaces::FrontPlaneSignalGenerator::get_dac_out0 ( ) const
override

Definition at line 182 of file signal_generator.cpp.

◆ get_dac_out1()

float platform::interfaces::FrontPlaneSignalGenerator::get_dac_out1 ( ) const
override

Definition at line 184 of file signal_generator.cpp.

◆ get_frequency()

float platform::interfaces::FrontPlaneSignalGenerator::get_frequency ( ) const
override

Definition at line 164 of file signal_generator.cpp.

◆ get_offset()

float platform::interfaces::FrontPlaneSignalGenerator::get_offset ( ) const
override

Definition at line 178 of file signal_generator.cpp.

◆ get_phase()

float platform::interfaces::FrontPlaneSignalGenerator::get_phase ( ) const
override

Definition at line 166 of file signal_generator.cpp.

◆ get_real_frequency()

float platform::interfaces::FrontPlaneSignalGenerator::get_real_frequency ( ) const
override

Returns the actually set frequency of the function generator, containing rounding errors.

Definition at line 156 of file signal_generator.cpp.

◆ get_real_phase()

float platform::interfaces::FrontPlaneSignalGenerator::get_real_phase ( ) const
override

Returns the actually set phase of the function generator, containing rounding errors.

Possible values are mapped to [0, 2PI].

Definition at line 160 of file signal_generator.cpp.

◆ get_sleep()

bool platform::interfaces::FrontPlaneSignalGenerator::get_sleep ( ) const
override

Definition at line 180 of file signal_generator.cpp.

◆ get_square_voltage_high()

float platform::interfaces::FrontPlaneSignalGenerator::get_square_voltage_high ( ) const
override

Definition at line 174 of file signal_generator.cpp.

◆ get_square_voltage_low()

float platform::interfaces::FrontPlaneSignalGenerator::get_square_voltage_low ( ) const
override

Definition at line 172 of file signal_generator.cpp.

◆ get_wave_form()

WaveForm platform::interfaces::FrontPlaneSignalGenerator::get_wave_form ( ) const
override

Definition at line 168 of file signal_generator.cpp.

◆ init()

bool platform::interfaces::FrontPlaneSignalGenerator::init ( )
override

Initializes the signal generator and puts it to sleep.

Definition at line 113 of file signal_generator.cpp.

◆ is_installed()

bool platform::interfaces::FrontPlaneSignalGenerator::is_installed ( ) const
inlineoverride

Returns wether an signal generator module is actually installed and active.

Writing to an uninstalled generator will result in fauilure

Definition at line 171 of file signal_generator.h.

◆ set_amplitude()

bool platform::interfaces::FrontPlaneSignalGenerator::set_amplitude ( float amplitude)
override

Sets the amplitude of the sine or triangle wave in machine units.

Possible values are: [0, 1]. The amplitude of the square output is not affected by this function.

Definition at line 124 of file signal_generator.cpp.

◆ set_dac_out0()

bool platform::interfaces::FrontPlaneSignalGenerator::set_dac_out0 ( float value)
override

Writes the DACout0 constant voltage output. Possible values are: [-2V, 2V].

Definition at line 190 of file signal_generator.cpp.

◆ set_dac_out1()

bool platform::interfaces::FrontPlaneSignalGenerator::set_dac_out1 ( float value)
override

Writes the DACout1 constant voltage output. Possible values are: [-2V, 2V].

Definition at line 197 of file signal_generator.cpp.

◆ set_frequency()

void platform::interfaces::FrontPlaneSignalGenerator::set_frequency ( float frequency)
override

Sets the frequency of the sine / triangle output in Hz.

Note that the square output will always operate on half of the specified frequency. Returns the actually set frequency.

Definition at line 118 of file signal_generator.cpp.

◆ set_offset()

bool platform::interfaces::FrontPlaneSignalGenerator::set_offset ( float offset)
override

Sets the constant offset of the sine or triangle output in machine units.

The levels of the square output are not affected by this function.

Definition at line 149 of file signal_generator.cpp.

◆ set_phase()

void platform::interfaces::FrontPlaneSignalGenerator::set_phase ( float phase)
override

Sets the phase of the frequency outputs synchronised to the reset pin.

Possible values are [0, 2 PI]. Returns the actually set phase.

Definition at line 120 of file signal_generator.cpp.

◆ set_square_voltage_high()

bool platform::interfaces::FrontPlaneSignalGenerator::set_square_voltage_high ( float high)
override

Sets the upper value of the square output in machine units.

Possible values are: [-1, 1]. The amplitude of the sine / triangle output is not affected by this function.

Definition at line 142 of file signal_generator.cpp.

Referenced by set_square_voltage_levels().

◆ set_square_voltage_levels()

bool platform::interfaces::FrontPlaneSignalGenerator::set_square_voltage_levels ( float low,
float high )
override

Sets the lower and upper value of the square output in machine units.

Possible values are: [-1, 1]. The amplitude of the sine / triangle output is not affected by this function.

Definition at line 131 of file signal_generator.cpp.

References set_square_voltage_high(), and set_square_voltage_low().

◆ set_square_voltage_low()

bool platform::interfaces::FrontPlaneSignalGenerator::set_square_voltage_low ( float low)
override

Sets the lower value of the square output in machine units.

Possible values are: [-1, 1]. The amplitude of the sine / triangle output is not affected by this function.

Definition at line 135 of file signal_generator.cpp.

Referenced by set_square_voltage_levels().

◆ set_wave_form()

void platform::interfaces::FrontPlaneSignalGenerator::set_wave_form ( WaveForm wave_form)
override

Sets the wave form of the function generator output.

Definition at line 122 of file signal_generator.cpp.

◆ sleep()

void platform::interfaces::FrontPlaneSignalGenerator::sleep ( )
override

Sets the sine / triangle output of the function generator to zero.

The square output will stay at high or low level.

Definition at line 186 of file signal_generator.cpp.

◆ write_to_hardware()

utils::status platform::interfaces::FrontPlaneSignalGenerator::write_to_hardware ( )
override

Definition at line 204 of file signal_generator.cpp.


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