to Mineta

Dependencies:   VNH5019

Dependents:   agz_base_ver2 agz_base_ver2 get_GPS_data_ver1 aigamozu_program_ver2 ... more

AigamozuControlPackets.h

Committer:
m5171135
Date:
2014-06-04
Revision:
1:80448565c15c
Parent:
0:2b8b56ac7a82
Child:
2:3f2d4f53ceed

File content as of revision 1:80448565c15c:

#include "mbed.h"
#include "VNH5019.h"

#ifndef AIGAMOZU_CONTROL_PACKETS
#define AIGAMOZU_CONTROL_PACKETS

#define RECEIVES_GPS_STATUS_LENGTH 32
#define RECEIVES_ACK_LENGTH 13


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};
enum STATUS {GPS_AVAIL = 0, GPS_UNAVAIL = 1};

union TEST_T{
    long a;
    uint8_t b[4];
    };

class AigamozuControlPackets{
    
    public:
    Ticker randomAxis;
    
    //Change
    
    //Create Command: Robot -> Controller/Base 
    uint8_t* createStatusPacket(long latitudeH,long latitudeL,long longitudeH,long longitudeL,uint8_t fromID,uint8_t toID);
    uint8_t* createAckPacket(uint8_t fromID,uint8_t toID);
    
    //check Command: 
    uint8_t check(); 
        
    //
    bool checkCommandAvilable(COMMAND_TYPE requestCommand);
    uint8_t checkCommnadType(uint8_t* buf);
    
    MODE nowMode;
    STATUS nowStatus;
        
    private:
    };
    
#endif