Function generator

Dependencies:   Serial_HL mbed

FuncGen.h

Committer:
hollegha2
Date:
2016-03-17
Revision:
2:100244cef3d6
Child:
3:c8c3b755ef54

File content as of revision 2:100244cef3d6:

#ifndef FuncGenFSST_h
#define FuncGenFSST_h

// Amplituden fix auf +/-1

class SignedRampGen
{
public:
    float val; // momentaner Ausgangswert
private:
    float _inc;
public:
    SignedRampGen(); // Konstruktor

    void SetPointsPerPeriod(int aPoints);

    // bezogen auf Fsample 0..0.5
    void SetFrequ(float aFrequ);

    // Einen Abtastwert berechnen
    // wird bei z.B. Fsample=100Hz  100x pro sec afgerufen
    void CalcOneStep();
};


class TriangleGen
{
public:
    float val; // momentaner Ausgangswert
private:
    float _inc;
    int   _state;
public:
    TriangleGen();

    void SetPointsPerPeriod(int aPoints);

    // bezogen auf Fsample 0..0.5
    void SetFrequ(float aFrequ);

    // Einen Abtastwert berechnen
    void CalcOneStep();
};


class RectGen
{
public:
    float val; // momentaner Ausgangswert
private:
    float _inc;
    float _phase;
public:
    RectGen();

    void SetPointsPerPeriod(int aPoints);

    void SetFrequ(float aFrequ);

    // Dauer des ON-Pulses in Prozent ( 0..1 )
    void SetPulsWidth(float aPercent);

    // Einen Abtastwert berechnen
    void CalcOneStep();
};

#endif