展示会用です
Dependencies: VNH5019
Dependents: Aigamozu_Robot_展示会 Aigamozu_Robot_March Aigamozu_Robot_templete
Fork of AigamozuControlPackets by
AigamozuControlPackets.h
- Committer:
- s1200058
- Date:
- 2017-03-17
- Revision:
- 48:4695e72853c6
- Parent:
- 47:36fdf8cd4336
- Child:
- 49:3f097e4ad60f
File content as of revision 48:4695e72853c6:
#include "mbed.h" #include "VNH5019.h" #ifndef AIGAMOZU_CONTROL_PACKETS #define AIGAMOZU_CONTROL_PACKETS #define MANUAL_COMMAND_LENGTH 17 #define REQUEST_COMMNAD_LENGTH 11 #define CHANGE_MODE_COMMAND_LENGTH 12 #define RECEIVE_STATUS_COMMNAD_LENGTH 64 #define SEND_DATA_COMMNAD_LENGTH 24 enum COMMAND_TYPE {MANUAL = 'M', STATUS_REQUEST = 'S', CHANGE_MODE = 'C', RECEIVE_STATUS = 'R',RECEIVE_KALMAN = 'K'}; enum MODE {STANDBY_MODE = 0, MANUAL_MODE = 1,AUTO_MODE = 2,AUTO_GPS_MODE = 3}; enum STATUS {GPS_AVAIL = 0, GPS_UNAVAIL = 1,GPS_OUT_AREA = 2}; union UNION_int_char{ int16_t int_value; uint8_t char_value[2]; }; class AigamozuControlPackets{ //--------PUBLIC-----------// public: AigamozuControlPackets(VNH5019 agzSheild); Ticker eachModeInt; uint8_t* packetData; //using create packet uint8_t* getPacketData(); int getPacketLength(); //Change Mode: bool changeMode(uint8_t *buf); //Check Command Type using xbee buffer; uint8_t checkCommnadType(uint8_t* buf); //Change Speed void changeSpeed(uint8_t* buf); MODE nowMode; char motor_command; STATUS nowStatus; int packetLength; //Auto Type 2 -> GPS bool gpsAuto(/*const int autobase[]*/void); void control_Motor(int); Timer Move_Timer; // ジャイロ・加速度データを送信する void SendDataCommand(uint8_t ,uint8_t, int16_t, int16_t, int16_t, int16_t, int16_t, int16_t, uint8_t); //受信したデータの処理 void GetData(uint8_t*,uint8_t*, uint8_t*,uint8_t*,uint8_t*,uint8_t*); int r_ax, r_ay, r_az, r_gx, r_gy, r_gz; //--------PRIVATE-----------// private: // VNH5019 _agzSheild; void manualMode(); int manualCount; }; #endif