library for omnidirectional planar positioning system
Dependents: measuring_wheel 2018NHK_gakugaku_robo 2018NHK_gaku_ver2
Diff: OmniPosition.h
- Revision:
- 2:edd33d3ad0fd
- Parent:
- 1:0229fc98a26f
- Child:
- 3:47676abdf529
--- a/OmniPosition.h Sat Jun 30 14:23:07 2018 +0900 +++ b/OmniPosition.h Sun Jul 01 16:39:13 2018 +0900 @@ -4,28 +4,41 @@ #include "mbed.h" #include "CycleInt.h" -#define SERIAL_BUFFER_SIZE 8 -#define HEADER_FIRST_BYTE 0xAA -#define HEADER_SECOND_BYTE 0xBB -#define RECEIVE_FREQ (1.0/500.0) +#define SERIAL_BUFFER_SIZE 6 +#define HEADER_FIRST_BYTE 72 +#define HEADER_SECOND_BYTE 42 +#define RECEIVE_FREQ 0.005 +#define SEND_FREQ 0.1 #define DEFAULT_BAUD 115200 class OmniPosition : public RawSerial { public : OmniPosition(PinName serialTX, PinName serialRX); - + + int getX(); + int getY(); + + void reset(); + private : void readData(); void assemble(); + void send(); CycleInt readCounter; CycleInt takeCounter; - Ticker ticker; + Ticker assembleTicker; + Ticker sendTicker; + + int X; + int Y; char *buffer; + char *data; bool headerCheck; int headerPoint; + bool resetSend; }; #endif