now with PID controler XXXD
Dependencies: HIDScope MODSERIAL QEI biquadFilter mbed
Fork of another_try_from_scratch_on_emg by
main.cpp
- Committer:
- daniQQue
- Date:
- 2016-10-21
- Revision:
- 3:79b95226a608
- Parent:
- 2:025d9065b25f
- Child:
- 4:7d9ca9c1dcce
File content as of revision 3:79b95226a608:
//libraries #include "mbed.h" #include "HIDScope.h" #include "biquadFilter.h" #include "MODSERIAL.h" //Define objects AnalogIn emg0( A0 ); //analog in to get EMG in to c++ Ticker sample_timer; //ticker HIDScope scope( 2); //open 3 channels in hidscope DigitalOut led(LED_GREEN); MODSERIAL pc(USBTX,USBRX); // connection with pc //define variables double emg_0_value; biquadFilter biqfilter(-1.1430, 0.4128, 0.6389, -1.2779, 0.6389); //initialize filter void filter(){ emg_0_value=emg0.read(); //read the emg value from the elektrodes led=!led; double emg_filter=biqfilter.step(emg_0_value) ; //send signals to scope scope.set(0, emg_0_value ); //set emg signal to scope in channel 1 scope.set(1, emg_filter ); scope.send(); //send all the signals to the scope pc.printf("emg raw: %f, emg filter %f \r\n",emg_0_value,emg_filter); } //program int main() { sample_timer.attach(&filter, 0.001); //continously execute the EMG reader and filter, it ensures that filter and sampling is executed every 1/frequency seconds pc.baud(115200); //connection with pc at 115200 rate //endless loop while(1) {} }