展示会用です

Dependencies:   VNH5019

Dependents:   Aigamozu_Robot_展示会 Aigamozu_Robot_March Aigamozu_Robot_templete

Fork of AigamozuControlPackets by aigamozu

Committer:
s1200058
Date:
Fri Aug 04 12:49:32 2017 +0000
Revision:
53:99b977d16a6d
Parent:
50:61d72f617aa5
Child:
52:d4d739f01b38
for_OHARA

Who changed what in which revision?

UserRevisionLine numberNew contents of line
m5171135 0:2b8b56ac7a82 1 #include "mbed.h"
m5171135 0:2b8b56ac7a82 2 #include "VNH5019.h"
m5171135 0:2b8b56ac7a82 3
m5171135 0:2b8b56ac7a82 4 #ifndef AIGAMOZU_CONTROL_PACKETS
m5171135 0:2b8b56ac7a82 5 #define AIGAMOZU_CONTROL_PACKETS
m5171135 0:2b8b56ac7a82 6
m5171135 2:3f2d4f53ceed 7 #define MANUAL_COMMAND_LENGTH 17
m5171135 2:3f2d4f53ceed 8 #define REQUEST_COMMNAD_LENGTH 11
m5171135 2:3f2d4f53ceed 9 #define CHANGE_MODE_COMMAND_LENGTH 12
kityann 17:a6fa8cc96d94 10 #define RECEIVE_STATUS_COMMNAD_LENGTH 64
m5171135 0:2b8b56ac7a82 11
kityann 13:a5bc425540a7 12 enum COMMAND_TYPE {MANUAL = 'M', STATUS_REQUEST = 'S', CHANGE_MODE = 'C', RECEIVE_STATUS = 'R',RECEIVE_KALMAN = 'K'};
m5171135 4:04dadf67ecb6 13 enum MODE {STANDBY_MODE = 0, MANUAL_MODE = 1,AUTO_MODE = 2,AUTO_GPS_MODE = 3};
m5171135 6:f164a716be46 14 enum STATUS {GPS_AVAIL = 0, GPS_UNAVAIL = 1,GPS_OUT_AREA = 2};
m5171135 0:2b8b56ac7a82 15
m5171135 0:2b8b56ac7a82 16 class AigamozuControlPackets{
m5171135 0:2b8b56ac7a82 17
m5171135 6:f164a716be46 18 //--------PUBLIC-----------//
m5171135 0:2b8b56ac7a82 19 public:
m5171135 5:3f51eeb5aedc 20 AigamozuControlPackets(VNH5019 agzSheild);
m5171135 5:3f51eeb5aedc 21
m5171135 6:f164a716be46 22 Ticker eachModeInt;
m5171135 0:2b8b56ac7a82 23
m5171135 2:3f2d4f53ceed 24 uint8_t* packetData;
s1200058 41:fbf8f617a6ab 25
m5171135 2:3f2d4f53ceed 26 //using create packet
m5171135 2:3f2d4f53ceed 27 uint8_t* getPacketData();
m5171135 2:3f2d4f53ceed 28 int getPacketLength();
m5171135 2:3f2d4f53ceed 29
m5171135 2:3f2d4f53ceed 30 //Change Mode:
m5171135 2:3f2d4f53ceed 31 bool changeMode(uint8_t *buf);
m5171135 5:3f51eeb5aedc 32
m5171135 5:3f51eeb5aedc 33 //Check Command Type using xbee buffer;
m5171135 0:2b8b56ac7a82 34 uint8_t checkCommnadType(uint8_t* buf);
m5171135 0:2b8b56ac7a82 35
s1200058 9:4f675487f06b 36 //Change Speed
m5171135 5:3f51eeb5aedc 37 void changeSpeed(uint8_t* buf);
m5171135 5:3f51eeb5aedc 38
m5171135 0:2b8b56ac7a82 39 MODE nowMode;
s1200058 50:61d72f617aa5 40 char motorCommand;
m5171135 0:2b8b56ac7a82 41 STATUS nowStatus;
m5171135 4:04dadf67ecb6 42 int packetLength;
m5171135 4:04dadf67ecb6 43
s1200058 20:fec2d6dec897 44 //Auto Type 2 -> GPS
s1200058 50:61d72f617aa5 45 bool autoMove(/*const int autobase[]*/void);
s1200058 50:61d72f617aa5 46 void controlMotor(int);
s1200058 50:61d72f617aa5 47 Timer moveTimer;
s1200058 24:ed71894a6952 48
m5171135 6:f164a716be46 49 //--------PRIVATE-----------//
m5171135 0:2b8b56ac7a82 50 private:
m5171135 5:3f51eeb5aedc 51 //
m5171135 5:3f51eeb5aedc 52 VNH5019 _agzSheild;
m5171135 5:3f51eeb5aedc 53
m5171135 5:3f51eeb5aedc 54 void manualMode();
m5171135 5:3f51eeb5aedc 55 int manualCount;
s1200058 41:fbf8f617a6ab 56
m5171135 0:2b8b56ac7a82 57 };
m5171135 0:2b8b56ac7a82 58
m5171135 0:2b8b56ac7a82 59 #endif