einfacher TP, TP1Ordn.cpp und .h sind wichtig

Dependencies:   Serial_HL mbed

Fork of ProcVisDemo by michael hollegha

Committer:
mSeiser
Date:
Wed May 03 16:04:57 2017 +0000
Revision:
2:a8f3233502df
nur einfacher TP;

Who changed what in which revision?

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