UvA NetCentric Computing listener
Dependencies: AndroidAccessory Controls HBridge MotorController mbed
Fork of uva_nc by
NetCentricApp.h@7:d9d30a2d8d9f, 2016-01-10 (annotated)
- Committer:
- Sinterbaas
- Date:
- Sun Jan 10 23:48:29 2016 +0000
- Revision:
- 7:d9d30a2d8d9f
- Parent:
- 6:b5072fb695f2
Remove the ghetto
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
diepvriezer | 0:0f9ceecf1db8 | 1 | #ifndef __NETCENTRICAPP_H__ |
diepvriezer | 0:0f9ceecf1db8 | 2 | #define __NETCENTRICAPP_H__ |
diepvriezer | 0:0f9ceecf1db8 | 3 | |
diepvriezer | 0:0f9ceecf1db8 | 4 | #include "AndroidAccessory.h" |
diepvriezer | 0:0f9ceecf1db8 | 5 | #include "mbed.h" |
diepvriezer | 0:0f9ceecf1db8 | 6 | #include "MbedCommand.h" |
jurgy | 3:0229ad4f2db1 | 7 | #include "PcControls.h" |
diepvriezer | 0:0f9ceecf1db8 | 8 | |
diepvriezer | 0:0f9ceecf1db8 | 9 | #define READ_BUFF 2048 |
diepvriezer | 0:0f9ceecf1db8 | 10 | #define WRITE_BUFF 2048 |
diepvriezer | 0:0f9ceecf1db8 | 11 | |
diepvriezer | 0:0f9ceecf1db8 | 12 | #define NO_ERROR 0 |
diepvriezer | 0:0f9ceecf1db8 | 13 | #define ERR_COMMAND_NOT_FOUND 1 |
diepvriezer | 0:0f9ceecf1db8 | 14 | |
diepvriezer | 0:0f9ceecf1db8 | 15 | #define COMMAND_SUM 1 |
diepvriezer | 0:0f9ceecf1db8 | 16 | #define COMMAND_AVG 2 |
diepvriezer | 0:0f9ceecf1db8 | 17 | #define COMMAND_LED 3 |
jurgy | 1:3cde55629b1d | 18 | #define COMMAND_MOTOR 4 |
Sinterbaas | 6:b5072fb695f2 | 19 | #define COMMAND_STATUS 5 |
diepvriezer | 0:0f9ceecf1db8 | 20 | |
diepvriezer | 0:0f9ceecf1db8 | 21 | class NetCentricApp : private AndroidAccessory { |
diepvriezer | 0:0f9ceecf1db8 | 22 | public: |
jurgy | 3:0229ad4f2db1 | 23 | NetCentricApp(MotorControlsPc &motorControlsPc): |
diepvriezer | 0:0f9ceecf1db8 | 24 | AndroidAccessory(READ_BUFF, WRITE_BUFF, |
diepvriezer | 0:0f9ceecf1db8 | 25 | "ARM", |
diepvriezer | 0:0f9ceecf1db8 | 26 | "mbed", |
diepvriezer | 0:0f9ceecf1db8 | 27 | "mbed - NetCentric", |
diepvriezer | 0:0f9ceecf1db8 | 28 | "0.2", |
diepvriezer | 0:0f9ceecf1db8 | 29 | "http://www.uva.nl", |
jurgy | 3:0229ad4f2db1 | 30 | "0000000012345678"), |
jurgy | 3:0229ad4f2db1 | 31 | motorControlsPc ( motorControlsPc ) |
diepvriezer | 0:0f9ceecf1db8 | 32 | {}; |
diepvriezer | 0:0f9ceecf1db8 | 33 | |
diepvriezer | 0:0f9ceecf1db8 | 34 | protected: |
diepvriezer | 0:0f9ceecf1db8 | 35 | virtual void setupDevice(); |
diepvriezer | 0:0f9ceecf1db8 | 36 | virtual void resetDevice(); |
diepvriezer | 0:0f9ceecf1db8 | 37 | virtual int callbackRead(u8 *buffer, int len); |
diepvriezer | 0:0f9ceecf1db8 | 38 | virtual int callbackWrite(); |
diepvriezer | 0:0f9ceecf1db8 | 39 | |
diepvriezer | 0:0f9ceecf1db8 | 40 | MbedResponse *getResponse(MbedRequest *request); |
diepvriezer | 0:0f9ceecf1db8 | 41 | |
diepvriezer | 0:0f9ceecf1db8 | 42 | private: |
diepvriezer | 0:0f9ceecf1db8 | 43 | static float getFloat(u8 *buffer, int offset, int bufferLen); |
diepvriezer | 0:0f9ceecf1db8 | 44 | static int getInt(u8 *buffer, int offset, int bufferLen); |
diepvriezer | 0:0f9ceecf1db8 | 45 | static u8 getUByte(u8 *buffer, int offset, int bufferLen); |
diepvriezer | 0:0f9ceecf1db8 | 46 | |
diepvriezer | 0:0f9ceecf1db8 | 47 | MbedResponse *sumCommand(MbedRequest *request); |
diepvriezer | 0:0f9ceecf1db8 | 48 | MbedResponse *avgCommand(MbedRequest *request); |
diepvriezer | 0:0f9ceecf1db8 | 49 | MbedResponse *ledCommand(MbedRequest *request); |
jurgy | 1:3cde55629b1d | 50 | MbedResponse *motorCommand(MbedRequest *request); |
Sinterbaas | 6:b5072fb695f2 | 51 | MbedResponse *statusCommand(MbedRequest *request); |
jurgy | 3:0229ad4f2db1 | 52 | |
jurgy | 3:0229ad4f2db1 | 53 | MotorControlsPc &motorControlsPc; |
diepvriezer | 0:0f9ceecf1db8 | 54 | }; |
diepvriezer | 0:0f9ceecf1db8 | 55 | |
diepvriezer | 0:0f9ceecf1db8 | 56 | #endif |