2021A Conste RX/TX lib

Dependents:   R21_ConsteSlave2

Committer:
TakushimaYukimasa
Date:
Thu Nov 04 10:42:49 2021 +0000
Revision:
0:847ba7e5b1a0
Child:
1:b67e696c0ec3
Child:
2:4571cb39d887
make

Who changed what in which revision?

UserRevisionLine numberNew contents of line
TakushimaYukimasa 0:847ba7e5b1a0 1 #ifndef INCLUDED_CONSTE_h_
TakushimaYukimasa 0:847ba7e5b1a0 2 #define INCLUDED_CONSTE_h_
TakushimaYukimasa 0:847ba7e5b1a0 3
TakushimaYukimasa 0:847ba7e5b1a0 4 #include "mbed.h"
TakushimaYukimasa 0:847ba7e5b1a0 5
TakushimaYukimasa 0:847ba7e5b1a0 6 /* マクロ定義 ----------------------------------------------------------------*/
TakushimaYukimasa 0:847ba7e5b1a0 7
TakushimaYukimasa 0:847ba7e5b1a0 8 /* 定数定義 ------------------------------------------------------------------*/
TakushimaYukimasa 0:847ba7e5b1a0 9
TakushimaYukimasa 0:847ba7e5b1a0 10 /* クラス定義 ----------------------------------------------------------------*/
TakushimaYukimasa 0:847ba7e5b1a0 11
TakushimaYukimasa 0:847ba7e5b1a0 12 /*******************************************************************************
TakushimaYukimasa 0:847ba7e5b1a0 13 * @名称 CONSTE
TakushimaYukimasa 0:847ba7e5b1a0 14 * @概要 2021Aチーム コントロールステーション受信クラス
TakushimaYukimasa 0:847ba7e5b1a0 15 *******************************************************************************/
TakushimaYukimasa 0:847ba7e5b1a0 16 class CONSTE
TakushimaYukimasa 0:847ba7e5b1a0 17 {
TakushimaYukimasa 0:847ba7e5b1a0 18 private:
TakushimaYukimasa 0:847ba7e5b1a0 19
TakushimaYukimasa 0:847ba7e5b1a0 20 /* 受信割り込み用関数 */
TakushimaYukimasa 0:847ba7e5b1a0 21 void uartRX(void);
TakushimaYukimasa 0:847ba7e5b1a0 22
TakushimaYukimasa 0:847ba7e5b1a0 23 uint8_t severalRX;
TakushimaYukimasa 0:847ba7e5b1a0 24
TakushimaYukimasa 0:847ba7e5b1a0 25 /* 受信生データ */
TakushimaYukimasa 0:847ba7e5b1a0 26 uint8_t readData[255];
TakushimaYukimasa 0:847ba7e5b1a0 27 uint8_t readLoc;
TakushimaYukimasa 0:847ba7e5b1a0 28 /* 各種処理済みデータ */
TakushimaYukimasa 0:847ba7e5b1a0 29 uint8_t arrayRestore[255];
TakushimaYukimasa 0:847ba7e5b1a0 30
TakushimaYukimasa 0:847ba7e5b1a0 31
TakushimaYukimasa 0:847ba7e5b1a0 32 public:
TakushimaYukimasa 0:847ba7e5b1a0 33 Serial uart;
TakushimaYukimasa 0:847ba7e5b1a0 34 Timer lostRX;
TakushimaYukimasa 0:847ba7e5b1a0 35
TakushimaYukimasa 0:847ba7e5b1a0 36 CONSTE(PinName tx, PinName rx, int baud);
TakushimaYukimasa 0:847ba7e5b1a0 37
TakushimaYukimasa 0:847ba7e5b1a0 38 // 操作パラメータ
TakushimaYukimasa 0:847ba7e5b1a0 39 bool baseStart;
TakushimaYukimasa 0:847ba7e5b1a0 40 bool baseEMO;
TakushimaYukimasa 0:847ba7e5b1a0 41
TakushimaYukimasa 0:847ba7e5b1a0 42 /* 受信データ */
TakushimaYukimasa 0:847ba7e5b1a0 43 //タイマ時間(ms)
TakushimaYukimasa 0:847ba7e5b1a0 44 uint32_t timeMs;
TakushimaYukimasa 0:847ba7e5b1a0 45 // タイマが動いてるか否か
TakushimaYukimasa 0:847ba7e5b1a0 46 bool isStart;
TakushimaYukimasa 0:847ba7e5b1a0 47 // 非常停止状態 (trueの時はモーターを止めてください)
TakushimaYukimasa 0:847ba7e5b1a0 48 bool isEMO;
TakushimaYukimasa 0:847ba7e5b1a0 49 // ロボットの状態 1…モード異常 2…座標追従失敗 3…正常
TakushimaYukimasa 0:847ba7e5b1a0 50 uint8_t RobotStat[3];
TakushimaYukimasa 0:847ba7e5b1a0 51
TakushimaYukimasa 0:847ba7e5b1a0 52
TakushimaYukimasa 0:847ba7e5b1a0 53 /* 送信データ */
TakushimaYukimasa 0:847ba7e5b1a0 54 // 識別番号 0…のあ 1…ねぷちゅーん 2…とりとん 4…リモコン1 6…リモコン2
TakushimaYukimasa 0:847ba7e5b1a0 55 uint8_t identificationNum;
TakushimaYukimasa 0:847ba7e5b1a0 56 /* ロボット送信データ */
TakushimaYukimasa 0:847ba7e5b1a0 57 // ロボットの状態 1…モード異常 2…座標追従失敗 3…正常
TakushimaYukimasa 0:847ba7e5b1a0 58 uint8_t status;
TakushimaYukimasa 0:847ba7e5b1a0 59 /* リモコン送信データ */
TakushimaYukimasa 0:847ba7e5b1a0 60 // 非常停止SW状態
TakushimaYukimasa 0:847ba7e5b1a0 61 bool swEMO;
TakushimaYukimasa 0:847ba7e5b1a0 62 // スタートSW状態
TakushimaYukimasa 0:847ba7e5b1a0 63 bool swStart;
TakushimaYukimasa 0:847ba7e5b1a0 64 // バッテリ電圧 (4bit)
TakushimaYukimasa 0:847ba7e5b1a0 65 int8_t batteryRemain;
TakushimaYukimasa 0:847ba7e5b1a0 66 };
TakushimaYukimasa 0:847ba7e5b1a0 67
TakushimaYukimasa 0:847ba7e5b1a0 68 #endif