今までのジョイスティックの入力を段階分けしていた方式から、アナログ値をできる限りそのまま使用する方式に変更しました。
Fork of ControlMain2017 by
ValueProcessor.h@42:6cc53727acc2, 2017-04-26 (annotated)
- Committer:
- YusukeWakuta
- Date:
- Wed Apr 26 11:57:00 2017 +0000
- Branch:
- ?????
- Revision:
- 42:6cc53727acc2
- Parent:
- 41:d2d123d7a6fa
- Child:
- 43:2d8bffac06cd
?????????????????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
YusukeWakuta | 42:6cc53727acc2 | 1 | #ifndef VALUE_HANDLER |
YusukeWakuta | 41:d2d123d7a6fa | 2 | #define VALUE_HANDLER |
YusukeWakuta | 41:d2d123d7a6fa | 3 | |
YusukeWakuta | 41:d2d123d7a6fa | 4 | #include "mbed.h" |
YusukeWakuta | 41:d2d123d7a6fa | 5 | |
YusukeWakuta | 42:6cc53727acc2 | 6 | #define PHASE_NUM 15 //奇数にしてください |
YusukeWakuta | 42:6cc53727acc2 | 7 | #define SUM_UP_NUM 10.0 |
YusukeWakuta | 42:6cc53727acc2 | 8 | #define PITCHPERROLL 1.5 |
YusukeWakuta | 42:6cc53727acc2 | 9 | |
YusukeWakuta | 41:d2d123d7a6fa | 10 | class ValueProcess |
YusukeWakuta | 41:d2d123d7a6fa | 11 | { |
YusukeWakuta | 41:d2d123d7a6fa | 12 | public: |
YusukeWakuta | 42:6cc53727acc2 | 13 | float rollNeutral; |
YusukeWakuta | 42:6cc53727acc2 | 14 | float rollUpperDiff; |
YusukeWakuta | 42:6cc53727acc2 | 15 | float rollLowerDiff; |
YusukeWakuta | 41:d2d123d7a6fa | 16 | |
YusukeWakuta | 42:6cc53727acc2 | 17 | float pitchNeutral;//1って書いた方 |
YusukeWakuta | 42:6cc53727acc2 | 18 | float pitchUpperDiff; |
YusukeWakuta | 42:6cc53727acc2 | 19 | float pitchLowerDiff; |
YusukeWakuta | 41:d2d123d7a6fa | 20 | float neutralDiff; |
YusukeWakuta | 41:d2d123d7a6fa | 21 | |
YusukeWakuta | 42:6cc53727acc2 | 22 | enum InputType { |
YusukeWakuta | 42:6cc53727acc2 | 23 | enumRoll, |
YusukeWakuta | 42:6cc53727acc2 | 24 | enumPitch |
YusukeWakuta | 42:6cc53727acc2 | 25 | }; |
YusukeWakuta | 42:6cc53727acc2 | 26 | |
YusukeWakuta | 42:6cc53727acc2 | 27 | ValueProcess(); |
YusukeWakuta | 41:d2d123d7a6fa | 28 | void setNeutral(float rollRead,float pitchRead); |
YusukeWakuta | 41:d2d123d7a6fa | 29 | void setMaxAndMin(InputType it,float value); |
YusukeWakuta | 42:6cc53727acc2 | 30 | float MatchUpperAndLower(InputType it, float max,float min,float neutral,float value); |
YusukeWakuta | 42:6cc53727acc2 | 31 | float Format2Range(float value,float max,float min); |
YusukeWakuta | 42:6cc53727acc2 | 32 | int PhaseFloat(float value,float max,float min); |
YusukeWakuta | 42:6cc53727acc2 | 33 | float SetRollPitchRacio(float pitch,float roll); |
YusukeWakuta | 42:6cc53727acc2 | 34 | void ValueProcess::Processing(float rollRead,float pitchRead,int* input_R,int* input_L); |
YusukeWakuta | 41:d2d123d7a6fa | 35 | }; |
YusukeWakuta | 41:d2d123d7a6fa | 36 | |
YusukeWakuta | 41:d2d123d7a6fa | 37 | #endif |