forward
Dependencies: VNH5019
Fork of AigamozuControlPackets by
AigamozuControlPackets.h
- Committer:
- m5171135
- Date:
- 2014-06-08
- Revision:
- 4:04dadf67ecb6
- Parent:
- 2:3f2d4f53ceed
- Child:
- 5:3f51eeb5aedc
File content as of revision 4:04dadf67ecb6:
#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 32 enum COMMAND_TYPE {MANUAL = 'M', STATUS_REQUEST = 'S', CHANGE_MODE = 'C', RECEIVE_STATUS = 'R'}; enum MODE {STANDBY_MODE = 0, MANUAL_MODE = 1,AUTO_MODE = 2,AUTO_GPS_MODE = 3}; enum STATUS {GPS_AVAIL = 0, GPS_UNAVAIL = 1}; union TEST_T{ long a; uint8_t b[4]; }; class AigamozuControlPackets{ public: AigamozuControlPackets(Ticker autoInt); uint8_t* packetData; //Create Packet: Controller/Base -> Robot void createManualCommad(uint8_t fromID,uint8_t toID,uint8_t directionL,uint8_t pwmL,uint8_t directionR, uint8_t pwmR); void createRequestCommand(uint8_t fromID,uint8_t toID,uint8_t); void createChangeModeCommand(uint8_t fromID,uint8_t toID,uint8_t,MODE mode); //Create Packet: Robot -> Controller/Base void createReceiveStatusCommand(uint8_t fromID,uint8_t toID,long latitudeH,long latitudeL,long longitudeH,long longitudeL); //uint8_t* createAckPacket(uint8_t fromID,uint8_t toID); //using create packet uint8_t* getPacketData(); int getPacketLength(); //Change Mode: bool changeMode(uint8_t *buf); // bool checkCommandAvilable(COMMAND_TYPE requestCommand); uint8_t checkCommnadType(uint8_t* buf); MODE nowMode; STATUS nowStatus; int packetLength; private: }; #endif