3rd year group project. Electronic and Electrical Engineering. Heriot-Watt University. This is the code for the mbed for the Automatic Little Object Organiser (ALOO).
Dependencies: MCP23017 TCS3472_I2C WattBob_TextLCD mbed
commander.h
- Committer:
- dreamselec
- Date:
- 2015-12-17
- Revision:
- 32:9a4046224b11
- Parent:
- 24:02c61793f90b
File content as of revision 32:9a4046224b11:
// // commander.h // Created by Chandan Siyag on 14/11/2015. // // Parses and executes commands received from the PC. // #include "globals.h" #ifndef _commander_h_ #define _commander_h_ const int kMaxCommandCount = 10; enum CommandObjectRaw { InvalidObject = -1, MBED = 0, PC = 1, ColourSensor = 2, Servos = 3, Port = 4, BreakBeam = 5 }; extern std::string CommandObjectValue [6]; extern std::string CommandObjectCommandsValue [6][kMaxCommandCount]; class Commander { public: Commander(); CommandTypeRaw typeRaw; char typeChar; CommandObjectRaw objectRaw; std::string object; std::string command[kMaxCommandCount - 1]; std::string commandValue[kMaxCommandCount - 1]; int commandIndex[kMaxCommandCount -1]; bool replyCommands; void decodeCommand(CommandTypeRaw type); std::string description(); virtual ~Commander(); private: void readCommandObject(); bool readCommand(CommandObjectRaw objectRaw); void executeCommand(); void resetVariables(); }; #endif