Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed QEI biquadFilter
main.cpp@8:874fe459b10a, 2016-11-02 (annotated)
- Committer:
- Jankoekenpan
- Date:
- Wed Nov 02 11:09:32 2016 +0000
- Revision:
- 8:874fe459b10a
- Parent:
- 5:23c850380b86
implemented filter; but still compiler errors wtf?
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jankoekenpan | 1:7d218e9d2111 | 1 | #include "arm.h" |
Jankoekenpan | 5:23c850380b86 | 2 | #include "mbed.h" |
Jankoekenpan | 8:874fe459b10a | 3 | #include "robot.h" |
Jankoekenpan | 8:874fe459b10a | 4 | #include "filter.h" |
Jankoekenpan | 1:7d218e9d2111 | 5 | |
Jankoekenpan | 1:7d218e9d2111 | 6 | // ====== Hardware stuff ====== |
Jankoekenpan | 1:7d218e9d2111 | 7 | |
Jankoekenpan | 5:23c850380b86 | 8 | Robot robot; |
Jankoekenpan | 1:7d218e9d2111 | 9 | |
Jankoekenpan | 5:23c850380b86 | 10 | AnalogIn emg1(A0); |
Jankoekenpan | 5:23c850380b86 | 11 | AnalogIn emg2(A1); |
Jankoekenpan | 1:7d218e9d2111 | 12 | |
Jankoekenpan | 8:874fe459b10a | 13 | DigitalOut red(LED_RED); |
Jankoekenpan | 8:874fe459b10a | 14 | DigitalOut green(LED_GREEN); |
Jankoekenpan | 8:874fe459b10a | 15 | DigitalOut blue(LED_BLUE); |
Jankoekenpan | 8:874fe459b10a | 16 | |
Jankoekenpan | 8:874fe459b10a | 17 | //====== Constants ===== |
Jankoekenpan | 1:7d218e9d2111 | 18 | |
Jankoekenpan | 1:7d218e9d2111 | 19 | enum DirectionState{UP = true, DOWN = false}; |
Jankoekenpan | 1:7d218e9d2111 | 20 | enum ProgramState{CALIBRATING, RUNNING}; |
Jankoekenpan | 1:7d218e9d2111 | 21 | |
Jankoekenpan | 8:874fe459b10a | 22 | const float sampleFrequency = 500; |
Jankoekenpan | 8:874fe459b10a | 23 | const float sampleTime = 1.0f/sampleFrequency; |
Jankoekenpan | 8:874fe459b10a | 24 | |
Jankoekenpan | 8:874fe459b10a | 25 | |
Jankoekenpan | 1:7d218e9d2111 | 26 | //====== Program Variables ====== |
Jankoekenpan | 1:7d218e9d2111 | 27 | |
Jankoekenpan | 1:7d218e9d2111 | 28 | ProgramState progState; |
Jankoekenpan | 1:7d218e9d2111 | 29 | DirectionState dirState; |
Jankoekenpan | 1:7d218e9d2111 | 30 | |
Jankoekenpan | 1:7d218e9d2111 | 31 | float emg1threshold; |
Jankoekenpan | 1:7d218e9d2111 | 32 | float emg2threshold; |
Jankoekenpan | 1:7d218e9d2111 | 33 | |
Jankoekenpan | 8:874fe459b10a | 34 | Ticker sampler; |
Jankoekenpan | 8:874fe459b10a | 35 | |
Jankoekenpan | 8:874fe459b10a | 36 | Filter filter1; |
Jankoekenpan | 8:874fe459b10a | 37 | Filter filter2; |
Jankoekenpan | 8:874fe459b10a | 38 | |
Jankoekenpan | 1:7d218e9d2111 | 39 | //====== Functions ====== |
Jankoekenpan | 1:7d218e9d2111 | 40 | |
Jankoekenpan | 1:7d218e9d2111 | 41 | |
Jankoekenpan | 1:7d218e9d2111 | 42 | void calibrate(void) { |
Jankoekenpan | 5:23c850380b86 | 43 | //Calibrate function -- blocking. |
Jankoekenpan | 8:874fe459b10a | 44 | //Calculates and sets both emg1threshold and emg2 threshold |
Jankoekenpan | 8:874fe459b10a | 45 | |
Jankoekenpan | 8:874fe459b10a | 46 | |
Jankoekenpan | 1:7d218e9d2111 | 47 | |
Jankoekenpan | 1:7d218e9d2111 | 48 | } |
Jankoekenpan | 1:7d218e9d2111 | 49 | |
Jankoekenpan | 1:7d218e9d2111 | 50 | |
Jankoekenpan | 1:7d218e9d2111 | 51 | int main() { |
Jankoekenpan | 1:7d218e9d2111 | 52 | progState = CALIBRATING; |
Jankoekenpan | 1:7d218e9d2111 | 53 | calibrate(); |
Jankoekenpan | 1:7d218e9d2111 | 54 | |
Jankoekenpan | 1:7d218e9d2111 | 55 | |
Jankoekenpan | 1:7d218e9d2111 | 56 | while(true); |
Jankoekenpan | 1:7d218e9d2111 | 57 | return 0; |
Jankoekenpan | 1:7d218e9d2111 | 58 | } |