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

Committer:
dreamselec
Date:
Mon Nov 16 05:10:17 2015 +0000
Revision:
6:98fe30430194
Parent:
4:4eebb4de22a7
Child:
7:b6e31bfdb2af
Started using class-object structure instead of structs. More control.
New classes: Commander, FPGA, Block, Colour.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dreamselec 6:98fe30430194 1 #include "Block.h"
dreamselec 2:7a55cb10259f 2
dreamselec 4:4eebb4de22a7 3 #ifndef _globals_h_
dreamselec 4:4eebb4de22a7 4 #define _globals_h_
dreamselec 2:7a55cb10259f 5
dreamselec 4:4eebb4de22a7 6 extern mbed::Serial pc;
dreamselec 4:4eebb4de22a7 7 extern MCP23017::MCP23017 *i2cport;
dreamselec 6:98fe30430194 8 extern int kBaudRate;
dreamselec 2:7a55cb10259f 9 //extern SerialBase gParity;
dreamselec 2:7a55cb10259f 10 extern int gStopBits;
dreamselec 2:7a55cb10259f 11
dreamselec 6:98fe30430194 12 const int kCommandBufferSize = 80;
dreamselec 6:98fe30430194 13 extern const int kSmallBufferSize = 5;
dreamselec 2:7a55cb10259f 14
dreamselec 2:7a55cb10259f 15 #define FOREVER for(;;)
dreamselec 2:7a55cb10259f 16
dreamselec 6:98fe30430194 17 enum CommandTypeRaw { Invalid = -1, Set = 0, Query = 1, Reply = 2 };
dreamselec 6:98fe30430194 18 const char CommandTypeValue [3] = {'!', '?', ':'};
dreamselec 6:98fe30430194 19 const char kCommandTerminator = ';';
dreamselec 6:98fe30430194 20
dreamselec 6:98fe30430194 21 enum Servos {Stopping = 1, Sorting = 2};
dreamselec 6:98fe30430194 22 enum StoppingServoPositions {Stop = 0, Go = 1};
dreamselec 6:98fe30430194 23 enum SortingServoPositions {NonHaz = 0, Haz = 1};
dreamselec 6:98fe30430194 24
dreamselec 6:98fe30430194 25 const Block kDefaultHazBlock = kDefaultHazBlock(Block::Size::Small);
dreamselec 6:98fe30430194 26 Block _HazBlock = Block(kDefaultHazBlock);
dreamselec 3:843b830ee8bd 27
dreamselec 6:98fe30430194 28 //enum BlockSize { SMALL = 0, BIG, BIGG };
dreamselec 6:98fe30430194 29 //
dreamselec 6:98fe30430194 30 //typedef struct {
dreamselec 6:98fe30430194 31 // int minRed;
dreamselec 6:98fe30430194 32 // int minBlue;
dreamselec 6:98fe30430194 33 // int minGreen;
dreamselec 6:98fe30430194 34 // int maxRed;
dreamselec 6:98fe30430194 35 // int maxBlue;
dreamselec 6:98fe30430194 36 // int maxGreen;
dreamselec 6:98fe30430194 37 //} Colour;
dreamselec 6:98fe30430194 38 //
dreamselec 6:98fe30430194 39 //typedef struct {
dreamselec 6:98fe30430194 40 // BlockSize blockSizeEnum;
dreamselec 6:98fe30430194 41 // Colour blockColour;
dreamselec 6:98fe30430194 42 //} Block;
dreamselec 6:98fe30430194 43 //
dreamselec 6:98fe30430194 44 //extern Block hazBlock;
dreamselec 6:98fe30430194 45 //Block getDefaultHazBlock();
dreamselec 3:843b830ee8bd 46
dreamselec 6:98fe30430194 47 #endif