Werkcollege opgave 23 september BMT K9
Dependencies: Encoder HIDScope MODSERIAL mbed QEI biquadFilter
main.cpp@17:a69df9645074, 2015-10-08 (annotated)
- Committer:
- bscheltinga
- Date:
- Thu Oct 08 12:08:12 2015 +0000
- Revision:
- 17:a69df9645074
- Parent:
- 15:7870f7912904
- Child:
- 18:68067ffd169e
Lowpassfilter met HIDScope not tested yet
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bscheltinga | 0:fe3896c6eeb0 | 1 | #include "mbed.h" |
bscheltinga | 12:0a079e86348e | 2 | #include "HIDScope.h" |
bscheltinga | 0:fe3896c6eeb0 | 3 | #include "MODSERIAL.h" |
bscheltinga | 13:04e10692e239 | 4 | #include "biquadFilter.h" //Filter direct form II |
bscheltinga | 0:fe3896c6eeb0 | 5 | |
bscheltinga | 15:7870f7912904 | 6 | //Define inputs |
bscheltinga | 14:57d38789bff2 | 7 | AnalogIn emgL(PTB0); //Analog input left arm |
bscheltinga | 14:57d38789bff2 | 8 | AnalogIn emgR(PTB1); //Analog input right arm |
bscheltinga | 4:96e47998d495 | 9 | |
bscheltinga | 15:7870f7912904 | 10 | //Define constants |
bscheltinga | 15:7870f7912904 | 11 | float emgL_L; |
bscheltinga | 15:7870f7912904 | 12 | |
bscheltinga | 13:04e10692e239 | 13 | Ticker looptimer; |
bscheltinga | 14:57d38789bff2 | 14 | volatile bool looptimerflag; |
bscheltinga | 15:7870f7912904 | 15 | |
bscheltinga | 15:7870f7912904 | 16 | const float a1 = 0; |
bscheltinga | 15:7870f7912904 | 17 | const float a2 = 0.17156822136; |
bscheltinga | 15:7870f7912904 | 18 | const float b0 = 0.2928920553; |
bscheltinga | 15:7870f7912904 | 19 | const float b1 = 0.5857841107; |
bscheltinga | 15:7870f7912904 | 20 | const float b2 = 0.2928920554; // Waarde van biquads via groep 1 2014 |
bscheltinga | 15:7870f7912904 | 21 | biquadFilter Lowpassfilter (a1, a2, b0, b1, b2); |
bscheltinga | 15:7870f7912904 | 22 | |
bscheltinga | 15:7870f7912904 | 23 | HIDScope scope(1); // 1 HIDScope kanaal |
bscheltinga | 0:fe3896c6eeb0 | 24 | |
bscheltinga | 13:04e10692e239 | 25 | void setlooptimerflag(void) |
bscheltinga | 13:04e10692e239 | 26 | { |
bscheltinga | 14:57d38789bff2 | 27 | looptimerflag = true; |
bscheltinga | 13:04e10692e239 | 28 | } |
bscheltinga | 11:73817c9df1e5 | 29 | |
bscheltinga | 13:04e10692e239 | 30 | int main() |
bscheltinga | 13:04e10692e239 | 31 | { |
bscheltinga | 13:04e10692e239 | 32 | looptimer.attach(setlooptimerflag,0.01); |
bscheltinga | 15:7870f7912904 | 33 | while(true) { |
bscheltinga | 12:0a079e86348e | 34 | |
bscheltinga | 17:a69df9645074 | 35 | while (looptimerflag == false) { |
bscheltinga | 15:7870f7912904 | 36 | looptimerflag = false; |
bscheltinga | 15:7870f7912904 | 37 | emgL_L = Lowpassfilter.step(emgL); //emgL_L Linker bicep met lowpass filter |
bscheltinga | 17:a69df9645074 | 38 | scope.set(0,emgL_L); |
bscheltinga | 17:a69df9645074 | 39 | scope.send(); |
bscheltinga | 13:04e10692e239 | 40 | } |
bscheltinga | 14:57d38789bff2 | 41 | } |
bscheltinga | 14:57d38789bff2 | 42 | } |