今までのジョイスティックの入力を段階分けしていた方式から、アナログ値をできる限りそのまま使用する方式に変更しました。

Dependencies:   mbed-rtos mbed

Fork of ControlMain2017 by albatross

ValueProcessor.h

Committer:
YusukeWakuta
Date:
2017-04-29
Branch:
?????
Revision:
45:df3b45a8cecc
Parent:
44:7b6f627a31da
Child:
46:53eb2ba661c5

File content as of revision 45:df3b45a8cecc:

#ifndef VALUE_HANDLER
#define VALUE_HANDLER

#include "mbed.h"

#define PHASE_NUM 21 //奇数にしてください
#define ADDITIONALPHASE 2
#define SUM_UP_NUM 10.0
class ValueProcess
{
private:
    float rollNeutral;
    float rollUpperDiff;
    float rollLowerDiff;

    float pitchNeutral;//1って書いた方
    float pitchUpperDiff;
    float pitchLowerDiff;
    float neutralDiff;

    enum InputType {
        enumRoll,
        enumPitch
    };
public:
    ValueProcess();
    void setNeutral(float rollRead,float pitchRead);
    void setMaxAndMin(InputType it,float value);
    float MatchUpperAndLower(InputType it, float max,float min,float neutral,float value);
    float Format2Range(float value,float max,float min);
    int PhaseFloat(float value,float max,float min);
    int ValueProcess::WidenNeutral(int phased);
    float SetRollPitchRacio(float pitch,float roll);
    float ValueProcess::MatchRange(float value);
    void ValueProcess::Processing(float rollRead,float pitchRead,int* input_R,int* input_L);
};

#endif