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
globals.h@6:98fe30430194, 2015-11-16 (annotated)
- 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?
User | Revision | Line number | New 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 |