teamALI / Mbed 2 deprecated HB2018

Dependencies:   mbed FreeRTOS

Committer:
MasashiNomura
Date:
Mon Mar 04 04:03:23 2019 +0000
Revision:
53:b09c062cc31c
Parent:
48:71aec693a7dc
Child:
57:56b7e66a0c3d
2019/03/04 add engine adjust step

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MasashiNomura 22:24c9c2dedca9 1 #ifndef __HBUSER_OPE_H__
MasashiNomura 22:24c9c2dedca9 2 #define __HBUSER_OPE_H__
MasashiNomura 22:24c9c2dedca9 3 /////////////////////////////////////////////////////////////////////
MasashiNomura 22:24c9c2dedca9 4 #include "typedef.h"
MasashiNomura 33:eb260dbfc22a 5 #include "globalFlags.h"
MasashiNomura 22:24c9c2dedca9 6 //#include "HbManager.h"
MasashiNomura 22:24c9c2dedca9 7
MasashiNomura 22:24c9c2dedca9 8
MasashiNomura 22:24c9c2dedca9 9 class HbUserOpe{
MasashiNomura 22:24c9c2dedca9 10 public:
MasashiNomura 23:79e20be4bc5b 11 enum SW_TYPE{
MasashiNomura 34:234b87f3e6ce 12 BRK_L = 0,// Front Left ブレーキ
MasashiNomura 34:234b87f3e6ce 13 BRK_R, // Front Right ブレーキ
MasashiNomura 36:2cc739c7e4cb 14 FLT_ON, //エンジンスロットル開放(全開->規定値まで 浮上)
MasashiNomura 34:234b87f3e6ce 15 FLT_OFF, //エンジンスロットル閉鎖(アイドリング)
MasashiNomura 36:2cc739c7e4cb 16 F_ENG_UP, //フロントエンジンスロットルをわずかに開く
MasashiNomura 36:2cc739c7e4cb 17 F_ENG_DOWN, //フロントエンジンスロットルをわずかに閉じる
MasashiNomura 36:2cc739c7e4cb 18 R_ENG_UP, //リアエンジンスロットルをわずかに開く
MasashiNomura 36:2cc739c7e4cb 19 R_ENG_DOWN, //リアエンジンスロットルをわずかに閉じる
MasashiNomura 34:234b87f3e6ce 20 R_1, //Reserve 1
MasashiNomura 34:234b87f3e6ce 21 ALL_STOP, //すべてのモーターストップ&エンジンスロットル閉鎖(アイドリング)
MasashiNomura 53:b09c062cc31c 22 MAX_SW_TYPE,
MasashiNomura 26:732bc37fbefd 23 };
MasashiNomura 53:b09c062cc31c 24
MasashiNomura 53:b09c062cc31c 25 private:
MasashiNomura 53:b09c062cc31c 26 typUserSw oldOpe;
MasashiNomura 53:b09c062cc31c 27 typUserSw curOpe;
MasashiNomura 53:b09c062cc31c 28 typSwCounter counter[MAX_SW_TYPE];
MasashiNomura 53:b09c062cc31c 29
MasashiNomura 53:b09c062cc31c 30 float AinAxlVal;
MasashiNomura 53:b09c062cc31c 31 float AinTrtlVal;
MasashiNomura 53:b09c062cc31c 32 #define MAX_RPM_USERSET 9000 // ユーザーに許容する最大RPM
MasashiNomura 53:b09c062cc31c 33 #define MIN_RPM_TOTAL 1500 // おおよその最低回転可能RPM
MasashiNomura 53:b09c062cc31c 34 #define MAX_ANA_VAL 1.0 // 最大アナログ読み込み値
MasashiNomura 53:b09c062cc31c 35 #define MIN_ANA_VAL 0.0 // 最小アナログ読み込み値
MasashiNomura 53:b09c062cc31c 36 #define MAX_EFF_ANA_VAL 0.98 // アナログ読み込み値の最大有効値
MasashiNomura 53:b09c062cc31c 37 #define MIN_EFF_ANA_VAL 0.01 // アナログ読み込み値の最小有効値
MasashiNomura 53:b09c062cc31c 38 //#define MAX_12BIT_DATA 4095 // FPGAに渡すデータ(値)の最大値 --> すでにglobalFlags.hで記述済みのためコメントアウト
MasashiNomura 53:b09c062cc31c 39 #define CNT_NUM_RE 20
MasashiNomura 53:b09c062cc31c 40 public:
MasashiNomura 23:79e20be4bc5b 41
MasashiNomura 22:24c9c2dedca9 42 HbUserOpe();//コンストラクタ
MasashiNomura 22:24c9c2dedca9 43 ~HbUserOpe();//デストラクタ
MasashiNomura 22:24c9c2dedca9 44
MasashiNomura 23:79e20be4bc5b 45 typUserSw GetUserOpe();//ボタンの現在状態取得(更新)
MasashiNomura 38:24ee50452755 46 float GetAinAccelRaw();
MasashiNomura 33:eb260dbfc22a 47 INT16 GetAinAccel();//前進用モーター(後部)アクセル用アナログ入力値取得(更新)
MasashiNomura 38:24ee50452755 48 float GetAinThrottleRaw();
MasashiNomura 36:2cc739c7e4cb 49 INT16 GetAinThrottle();//エンジンスロットル用アナログ入力値取得(更新)
MasashiNomura 23:79e20be4bc5b 50 bool ChkCtrlSW(SW_TYPE styp);
MasashiNomura 23:79e20be4bc5b 51 bool ChkCtrlSwAny();
MasashiNomura 36:2cc739c7e4cb 52 bool ChkCtrlSwBoth(SW_TYPE styp1, SW_TYPE styp2);
MasashiNomura 30:13ada1a24c59 53 bool ChkCtrlSwRiseEdge(SW_TYPE styp);
MasashiNomura 22:24c9c2dedca9 54 };
MasashiNomura 22:24c9c2dedca9 55
MasashiNomura 22:24c9c2dedca9 56 /////////////////////////////////////////////////////////////////////
MasashiNomura 22:24c9c2dedca9 57 #endif