受信割り込みバージョン
Dependents: a_team_R1370 ashimawari_sample_test 2022NHK_A_ashimawari 2022A_NHK_kikou
R1370.h@5:553c02009ad0, 2020-12-16 (annotated)
- Committer:
- highfieldsnj
- Date:
- Wed Dec 16 08:31:38 2020 +0000
- Revision:
- 5:553c02009ad0
- Parent:
- 4:ffc2a55269f9
add functions reset
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
UCHITAKE | 0:243364135087 | 1 | #ifndef R1370_H |
UCHITAKE | 0:243364135087 | 2 | #define R1370_H |
UCHITAKE | 0:243364135087 | 3 | |
UCHITAKE | 0:243364135087 | 4 | #include "mbed.h" |
UCHITAKE | 0:243364135087 | 5 | #include <vector> |
UCHITAKE | 0:243364135087 | 6 | |
UCHITAKE | 0:243364135087 | 7 | #define R1370_BUFFER_SIZE 15 |
UCHITAKE | 0:243364135087 | 8 | #define R1370_HEADER0 0xAA |
UCHITAKE | 0:243364135087 | 9 | #define R1370_HEADER1 0x00 |
UCHITAKE | 0:243364135087 | 10 | |
UCHITAKE | 0:243364135087 | 11 | class R1370 : public RawSerial |
UCHITAKE | 0:243364135087 | 12 | { |
UCHITAKE | 0:243364135087 | 13 | public : |
UCHITAKE | 0:243364135087 | 14 | R1370(PinName tx, PinName rx); |
UCHITAKE | 0:243364135087 | 15 | |
UCHITAKE | 0:243364135087 | 16 | float getAngle(); |
highfieldsnj | 5:553c02009ad0 | 17 | float getRelativeAngle(); |
UCHITAKE | 0:243364135087 | 18 | float getRate(); |
highfieldsnj | 4:ffc2a55269f9 | 19 | float getRadian(); |
highfieldsnj | 5:553c02009ad0 | 20 | float getRelativeRadian(); |
UCHITAKE | 0:243364135087 | 21 | int16_t getAcc(char l); |
UCHITAKE | 0:243364135087 | 22 | int16_t getAcc(int i); |
UCHITAKE | 0:243364135087 | 23 | int16_t getAccX(); |
UCHITAKE | 0:243364135087 | 24 | int16_t getAccY(); |
UCHITAKE | 0:243364135087 | 25 | int16_t getAccZ(); |
highfieldsnj | 5:553c02009ad0 | 26 | void reset(); |
UCHITAKE | 0:243364135087 | 27 | |
highfieldsnj | 3:2f00371553c1 | 28 | unsigned char upbit(); |
highfieldsnj | 3:2f00371553c1 | 29 | unsigned char downbit(); |
highfieldsnj | 3:2f00371553c1 | 30 | |
UCHITAKE | 0:243364135087 | 31 | |
UCHITAKE | 0:243364135087 | 32 | private : |
UCHITAKE | 0:243364135087 | 33 | void receiveByte(); |
highfieldsnj | 3:2f00371553c1 | 34 | void checkData(); |
UCHITAKE | 0:243364135087 | 35 | void assembleLoop(); |
UCHITAKE | 0:243364135087 | 36 | void assemble(); |
UCHITAKE | 0:243364135087 | 37 | |
UCHITAKE | 0:243364135087 | 38 | uint8_t index; |
UCHITAKE | 0:243364135087 | 39 | int16_t angle; |
UCHITAKE | 0:243364135087 | 40 | int16_t rate; |
UCHITAKE | 0:243364135087 | 41 | int16_t acc[3]; |
UCHITAKE | 0:243364135087 | 42 | uint8_t reserved; |
highfieldsnj | 3:2f00371553c1 | 43 | uint8_t buffer[R1370_BUFFER_SIZE]; |
highfieldsnj | 3:2f00371553c1 | 44 | uint8_t data[R1370_BUFFER_SIZE-3]; |
highfieldsnj | 3:2f00371553c1 | 45 | uint8_t bufferPoint; |
highfieldsnj | 3:2f00371553c1 | 46 | uint8_t receivedBytes; |
highfieldsnj | 5:553c02009ad0 | 47 | int16_t zeroPoint; |
highfieldsnj | 5:553c02009ad0 | 48 | float relativeAngle; |
highfieldsnj | 3:2f00371553c1 | 49 | |
highfieldsnj | 3:2f00371553c1 | 50 | unsigned char upbit_, downbit_; |
UCHITAKE | 0:243364135087 | 51 | }; |
UCHITAKE | 0:243364135087 | 52 | |
UCHITAKE | 0:243364135087 | 53 | #endif |