![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Func-Gen - basic setup
Tp1Ord.h@3:9fd12684fa88, 2021-03-23 (annotated)
- Committer:
- stkiegerl
- Date:
- Tue Mar 23 17:13:12 2021 +0000
- Revision:
- 3:9fd12684fa88
-
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
stkiegerl | 3:9fd12684fa88 | 1 | |
stkiegerl | 3:9fd12684fa88 | 2 | #ifndef Tp1Ord_h |
stkiegerl | 3:9fd12684fa88 | 3 | #define Tp1Ord_h |
stkiegerl | 3:9fd12684fa88 | 4 | |
stkiegerl | 3:9fd12684fa88 | 5 | class Tp1Ord { |
stkiegerl | 3:9fd12684fa88 | 6 | private: |
stkiegerl | 3:9fd12684fa88 | 7 | float _alpha; |
stkiegerl | 3:9fd12684fa88 | 8 | float _beta; |
stkiegerl | 3:9fd12684fa88 | 9 | float yn_1; // um eine Abtastung verzögertes y |
stkiegerl | 3:9fd12684fa88 | 10 | public: |
stkiegerl | 3:9fd12684fa88 | 11 | float y; // momentaner ausgangswert des Filtes |
stkiegerl | 3:9fd12684fa88 | 12 | public: |
stkiegerl | 3:9fd12684fa88 | 13 | Tp1Ord(); |
stkiegerl | 3:9fd12684fa88 | 14 | |
stkiegerl | 3:9fd12684fa88 | 15 | // Grenzfrequenz verstellen |
stkiegerl | 3:9fd12684fa88 | 16 | void SetAlpha(float aAlpha); |
stkiegerl | 3:9fd12684fa88 | 17 | |
stkiegerl | 3:9fd12684fa88 | 18 | void CalcOneStep(float aX); |
stkiegerl | 3:9fd12684fa88 | 19 | }; |
stkiegerl | 3:9fd12684fa88 | 20 | |
stkiegerl | 3:9fd12684fa88 | 21 | Tp1Ord::Tp1Ord() |
stkiegerl | 3:9fd12684fa88 | 22 | { |
stkiegerl | 3:9fd12684fa88 | 23 | y=yn_1=0; |
stkiegerl | 3:9fd12684fa88 | 24 | SetAlpha(0.1); // Vernünftiges Alpha setzen |
stkiegerl | 3:9fd12684fa88 | 25 | } |
stkiegerl | 3:9fd12684fa88 | 26 | |
stkiegerl | 3:9fd12684fa88 | 27 | void Tp1Ord::SetAlpha(float aAlpha) |
stkiegerl | 3:9fd12684fa88 | 28 | { |
stkiegerl | 3:9fd12684fa88 | 29 | _alpha=aAlpha; |
stkiegerl | 3:9fd12684fa88 | 30 | _beta=1.0f-aAlpha; |
stkiegerl | 3:9fd12684fa88 | 31 | } |
stkiegerl | 3:9fd12684fa88 | 32 | |
stkiegerl | 3:9fd12684fa88 | 33 | void Tp1Ord::CalcOneStep(float aX) |
stkiegerl | 3:9fd12684fa88 | 34 | { |
stkiegerl | 3:9fd12684fa88 | 35 | y = _alpha*aX + _beta*yn_1; |
stkiegerl | 3:9fd12684fa88 | 36 | // Verzögerung berechnen |
stkiegerl | 3:9fd12684fa88 | 37 | yn_1 = y; |
stkiegerl | 3:9fd12684fa88 | 38 | } |
stkiegerl | 3:9fd12684fa88 | 39 | |
stkiegerl | 3:9fd12684fa88 | 40 | #endif |
stkiegerl | 3:9fd12684fa88 | 41 | |
stkiegerl | 3:9fd12684fa88 | 42 | |
stkiegerl | 3:9fd12684fa88 | 43 | |
stkiegerl | 3:9fd12684fa88 | 44 | |
stkiegerl | 3:9fd12684fa88 | 45 | |
stkiegerl | 3:9fd12684fa88 | 46 | |
stkiegerl | 3:9fd12684fa88 | 47 | |
stkiegerl | 3:9fd12684fa88 | 48 | |
stkiegerl | 3:9fd12684fa88 | 49 | |
stkiegerl | 3:9fd12684fa88 | 50 | |
stkiegerl | 3:9fd12684fa88 | 51 | |
stkiegerl | 3:9fd12684fa88 | 52 | |
stkiegerl | 3:9fd12684fa88 | 53 | |
stkiegerl | 3:9fd12684fa88 | 54 | |
stkiegerl | 3:9fd12684fa88 | 55 | |
stkiegerl | 3:9fd12684fa88 | 56 | |
stkiegerl | 3:9fd12684fa88 | 57 | |
stkiegerl | 3:9fd12684fa88 | 58 | |
stkiegerl | 3:9fd12684fa88 | 59 | |
stkiegerl | 3:9fd12684fa88 | 60 |