2021 NHK B
OmniPosition.h@4:fc4c88fffef8, 2018-08-21 (annotated)
- Committer:
- takeuchi
- Date:
- Tue Aug 21 13:41:25 2018 +0900
- Revision:
- 4:fc4c88fffef8
- Parent:
- 3:47676abdf529
- Child:
- 5:f8c3aeb4e65f
fix func
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
UCHITAKE | 0:58910ef3f2b0 | 1 | #ifndef OMNI_POSITION_H |
UCHITAKE | 0:58910ef3f2b0 | 2 | #define OMNI_POSITION_H |
UCHITAKE | 0:58910ef3f2b0 | 3 | |
UCHITAKE | 0:58910ef3f2b0 | 4 | #include "mbed.h" |
UCHITAKE | 0:58910ef3f2b0 | 5 | #include "CycleInt.h" |
UCHITAKE | 0:58910ef3f2b0 | 6 | |
takeuchi |
4:fc4c88fffef8 | 7 | #define SERIAL_BUFFER_SIZE 9 |
takeuchi |
4:fc4c88fffef8 | 8 | #define HEADER_FIRST_BYTE 72 |
takeuchi |
4:fc4c88fffef8 | 9 | #define HEADER_SECOND_BYTE 42 |
takeuchi |
4:fc4c88fffef8 | 10 | #define RECEIVE_FREQ 0.05 |
takeuchi |
2:edd33d3ad0fd | 11 | #define SEND_FREQ 0.1 |
takeuchi |
1:0229fc98a26f | 12 | #define DEFAULT_BAUD 115200 |
takeuchi |
1:0229fc98a26f | 13 | |
takeuchi |
1:0229fc98a26f | 14 | class OmniPosition : public RawSerial { |
UCHITAKE | 0:58910ef3f2b0 | 15 | public : |
takeuchi |
1:0229fc98a26f | 16 | OmniPosition(PinName serialTX, PinName serialRX); |
takeuchi |
2:edd33d3ad0fd | 17 | |
takeuchi |
4:fc4c88fffef8 | 18 | int getX(); |
takeuchi |
4:fc4c88fffef8 | 19 | int getY(); |
takeuchi |
4:fc4c88fffef8 | 20 | double getTheta(); |
takeuchi |
2:edd33d3ad0fd | 21 | |
takeuchi |
2:edd33d3ad0fd | 22 | void reset(); |
takeuchi |
2:edd33d3ad0fd | 23 | |
UCHITAKE | 0:58910ef3f2b0 | 24 | private : |
takeuchi |
1:0229fc98a26f | 25 | void readData(); |
takeuchi |
1:0229fc98a26f | 26 | void assemble(); |
takeuchi |
2:edd33d3ad0fd | 27 | void send(); |
takeuchi |
1:0229fc98a26f | 28 | |
takeuchi |
1:0229fc98a26f | 29 | CycleInt readCounter; |
takeuchi |
1:0229fc98a26f | 30 | CycleInt takeCounter; |
takeuchi |
2:edd33d3ad0fd | 31 | Ticker assembleTicker; |
takeuchi |
2:edd33d3ad0fd | 32 | Ticker sendTicker; |
takeuchi |
2:edd33d3ad0fd | 33 | |
takeuchi |
4:fc4c88fffef8 | 34 | int X, bfrX; |
takeuchi |
4:fc4c88fffef8 | 35 | int Y, bfrY; |
takeuchi |
4:fc4c88fffef8 | 36 | int thetaint; |
takeuchi |
4:fc4c88fffef8 | 37 | double theta, bfrTheta; |
takeuchi |
1:0229fc98a26f | 38 | |
takeuchi |
4:fc4c88fffef8 | 39 | char *buffer; |
takeuchi |
4:fc4c88fffef8 | 40 | char *data; |
takeuchi |
1:0229fc98a26f | 41 | |
takeuchi |
1:0229fc98a26f | 42 | bool headerCheck; |
takeuchi |
1:0229fc98a26f | 43 | int headerPoint; |
takeuchi |
2:edd33d3ad0fd | 44 | bool resetSend; |
takeuchi |
4:fc4c88fffef8 | 45 | |
takeuchi |
4:fc4c88fffef8 | 46 | uint8_t checksum; |
UCHITAKE | 0:58910ef3f2b0 | 47 | }; |
UCHITAKE | 0:58910ef3f2b0 | 48 | |
takeuchi |
1:0229fc98a26f | 49 | #endif |
takeuchi |
4:fc4c88fffef8 | 50 |