test

Dependencies:   Serial_HL mbed

Committer:
RichardRiebenbauer
Date:
Tue Sep 24 16:23:49 2019 +0000
Revision:
0:619a9bde29ae
jgvjhk.j

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RichardRiebenbauer 0:619a9bde29ae 1
RichardRiebenbauer 0:619a9bde29ae 2 #ifndef FuncGenFSST_h
RichardRiebenbauer 0:619a9bde29ae 3 #define FuncGenFSST_h
RichardRiebenbauer 0:619a9bde29ae 4
RichardRiebenbauer 0:619a9bde29ae 5 // Amplituden fix auf +/-1
RichardRiebenbauer 0:619a9bde29ae 6
RichardRiebenbauer 0:619a9bde29ae 7 class SignedRampGen {
RichardRiebenbauer 0:619a9bde29ae 8 public:
RichardRiebenbauer 0:619a9bde29ae 9 float val; // momentaner Ausgangswert
RichardRiebenbauer 0:619a9bde29ae 10 private:
RichardRiebenbauer 0:619a9bde29ae 11 float _inc;
RichardRiebenbauer 0:619a9bde29ae 12 public:
RichardRiebenbauer 0:619a9bde29ae 13 SignedRampGen(); // Konstruktor
RichardRiebenbauer 0:619a9bde29ae 14
RichardRiebenbauer 0:619a9bde29ae 15 void SetPointsPerPeriod(float aPoints);
RichardRiebenbauer 0:619a9bde29ae 16
RichardRiebenbauer 0:619a9bde29ae 17 // bezogen auf Fsample 0..0.5
RichardRiebenbauer 0:619a9bde29ae 18 void SetFrequ(float aFrequ);
RichardRiebenbauer 0:619a9bde29ae 19
RichardRiebenbauer 0:619a9bde29ae 20 // Einen Abtastwert berechnen
RichardRiebenbauer 0:619a9bde29ae 21 // wird bei z.B. Fsample=100Hz 100x pro sec afgerufen
RichardRiebenbauer 0:619a9bde29ae 22 void CalcOneStep();
RichardRiebenbauer 0:619a9bde29ae 23 };
RichardRiebenbauer 0:619a9bde29ae 24
RichardRiebenbauer 0:619a9bde29ae 25
RichardRiebenbauer 0:619a9bde29ae 26 class TriangleGen {
RichardRiebenbauer 0:619a9bde29ae 27 public:
RichardRiebenbauer 0:619a9bde29ae 28 float val; // momentaner Ausgangswert
RichardRiebenbauer 0:619a9bde29ae 29 private:
RichardRiebenbauer 0:619a9bde29ae 30 float _inc;
RichardRiebenbauer 0:619a9bde29ae 31 int _state;
RichardRiebenbauer 0:619a9bde29ae 32 public:
RichardRiebenbauer 0:619a9bde29ae 33 TriangleGen();
RichardRiebenbauer 0:619a9bde29ae 34
RichardRiebenbauer 0:619a9bde29ae 35 void SetPointsPerPeriod(int aPoints);
RichardRiebenbauer 0:619a9bde29ae 36
RichardRiebenbauer 0:619a9bde29ae 37 // bezogen auf Fsample 0..0.5
RichardRiebenbauer 0:619a9bde29ae 38 void SetFrequ(float aFrequ);
RichardRiebenbauer 0:619a9bde29ae 39
RichardRiebenbauer 0:619a9bde29ae 40 // Einen Abtastwert berechnen
RichardRiebenbauer 0:619a9bde29ae 41 void CalcOneStep();
RichardRiebenbauer 0:619a9bde29ae 42 };
RichardRiebenbauer 0:619a9bde29ae 43
RichardRiebenbauer 0:619a9bde29ae 44
RichardRiebenbauer 0:619a9bde29ae 45 class RectGen {
RichardRiebenbauer 0:619a9bde29ae 46 public:
RichardRiebenbauer 0:619a9bde29ae 47 float val; // momentaner Ausgangswert
RichardRiebenbauer 0:619a9bde29ae 48 private:
RichardRiebenbauer 0:619a9bde29ae 49 float _inc;
RichardRiebenbauer 0:619a9bde29ae 50 float _phase;
RichardRiebenbauer 0:619a9bde29ae 51 public:
RichardRiebenbauer 0:619a9bde29ae 52 RectGen();
RichardRiebenbauer 0:619a9bde29ae 53
RichardRiebenbauer 0:619a9bde29ae 54 void SetPointsPerPeriod(int aPoints);
RichardRiebenbauer 0:619a9bde29ae 55
RichardRiebenbauer 0:619a9bde29ae 56 void SetFrequ(float aFrequ);
RichardRiebenbauer 0:619a9bde29ae 57
RichardRiebenbauer 0:619a9bde29ae 58 // Dauer des ON-Pulses in Prozent ( 0..1 )
RichardRiebenbauer 0:619a9bde29ae 59 void SetPulsWidth(float aPercent);
RichardRiebenbauer 0:619a9bde29ae 60
RichardRiebenbauer 0:619a9bde29ae 61 // Einen Abtastwert berechnen
RichardRiebenbauer 0:619a9bde29ae 62 void CalcOneStep();
RichardRiebenbauer 0:619a9bde29ae 63 };
RichardRiebenbauer 0:619a9bde29ae 64
RichardRiebenbauer 0:619a9bde29ae 65 #endif
RichardRiebenbauer 0:619a9bde29ae 66
RichardRiebenbauer 0:619a9bde29ae 67
RichardRiebenbauer 0:619a9bde29ae 68
RichardRiebenbauer 0:619a9bde29ae 69
RichardRiebenbauer 0:619a9bde29ae 70
RichardRiebenbauer 0:619a9bde29ae 71
RichardRiebenbauer 0:619a9bde29ae 72
RichardRiebenbauer 0:619a9bde29ae 73
RichardRiebenbauer 0:619a9bde29ae 74
RichardRiebenbauer 0:619a9bde29ae 75
RichardRiebenbauer 0:619a9bde29ae 76
RichardRiebenbauer 0:619a9bde29ae 77
RichardRiebenbauer 0:619a9bde29ae 78
RichardRiebenbauer 0:619a9bde29ae 79
RichardRiebenbauer 0:619a9bde29ae 80
RichardRiebenbauer 0:619a9bde29ae 81
RichardRiebenbauer 0:619a9bde29ae 82
RichardRiebenbauer 0:619a9bde29ae 83
RichardRiebenbauer 0:619a9bde29ae 84
RichardRiebenbauer 0:619a9bde29ae 85