added
Dependencies: BNO055_fusion PowerControl mbed
Fork of TEAM_G_FLOW_RIDA by
LOCALIZE.h@20:10a305298e27, 2016-04-03 (annotated)
- Committer:
- 12104404
- Date:
- Sun Apr 03 06:08:08 2016 +0000
- Revision:
- 20:10a305298e27
- Parent:
- 19:2dd81b864e14
- Child:
- 22:a68c32db9f9d
MEKATRONICS TEAM G
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
12104404 | 0:96d6eb224379 | 1 | #ifndef LOCALIZE_H |
12104404 | 0:96d6eb224379 | 2 | #define LOCALIZE_H |
12104404 | 0:96d6eb224379 | 3 | |
12104404 | 0:96d6eb224379 | 4 | #include "mbed.h" |
12104404 | 0:96d6eb224379 | 5 | #include "BNO055.h" |
12104404 | 0:96d6eb224379 | 6 | |
12104404 | 19:2dd81b864e14 | 7 | #define R_P_ADDR 0x04 //0x0B^0x0F=0x04 |
12104404 | 2:634c1adf89b2 | 8 | #define R_N_ADDR 0x0B |
12104404 | 1:8966a48ce8d5 | 9 | |
12104404 | 10:cf44f4387bc7 | 10 | #define FRAME_OFF 0 |
12104404 | 8:b36be08c44f8 | 11 | #define FRAME_H 150 |
12104404 | 8:b36be08c44f8 | 12 | #define FRAME_W 104 |
12104404 | 6:0602a9e8118b | 13 | #define R_WAIT 0.025 |
12104404 | 1:8966a48ce8d5 | 14 | #define R_ERROR 14 |
12104404 | 4:d70375cfa533 | 15 | #define RX_OFF 7 |
12104404 | 4:d70375cfa533 | 16 | #define RY_OFF 6 |
12104404 | 20:10a305298e27 | 17 | #define UR_JUMP 20 |
12104404 | 19:2dd81b864e14 | 18 | #define UR_DEADZONE 3 |
12104404 | 1:8966a48ce8d5 | 19 | |
12104404 | 1:8966a48ce8d5 | 20 | #define ERROR_IMU -1 |
12104404 | 1:8966a48ce8d5 | 21 | #define ERROR_RX_P -2 |
12104404 | 1:8966a48ce8d5 | 22 | #define ERROR_RX_N -3 |
12104404 | 1:8966a48ce8d5 | 23 | #define ERROR_RY_P -4 |
12104404 | 1:8966a48ce8d5 | 24 | #define ERROR_RY_N -5 |
12104404 | 0:96d6eb224379 | 25 | |
12104404 | 0:96d6eb224379 | 26 | typedef struct { |
12104404 | 0:96d6eb224379 | 27 | int x; |
12104404 | 0:96d6eb224379 | 28 | int y; |
12104404 | 0:96d6eb224379 | 29 | int a; |
12104404 | 0:96d6eb224379 | 30 | }LOCALIZE_xya; |
12104404 | 0:96d6eb224379 | 31 | |
12104404 | 0:96d6eb224379 | 32 | class LOCALIZE |
12104404 | 0:96d6eb224379 | 33 | { |
12104404 | 0:96d6eb224379 | 34 | public: |
12104404 | 15:7729da55873a | 35 | LOCALIZE(I2C& y_i2c, I2C& x_imu_i2c, PinName imu_reset, PinName sw1, PinName sw2, PinName sw3, PinName sw4); |
12104404 | 0:96d6eb224379 | 36 | int init(void); |
12104404 | 3:c58eb4be51de | 37 | void get_raw_xy(void); |
12104404 | 0:96d6eb224379 | 38 | void get_angle(LOCALIZE_xya *xya); |
12104404 | 1:8966a48ce8d5 | 39 | void get_xy(LOCALIZE_xya *xya); |
12104404 | 6:0602a9e8118b | 40 | int _angle, _rx_p, _rx_n, _ry_p, _ry_n;// |
12104404 | 6:0602a9e8118b | 41 | BNO055_EULER_TypeDef _euler; |
12104404 | 20:10a305298e27 | 42 | inline void ledSw(void); |
12104404 | 6:0602a9e8118b | 43 | |
12104404 | 0:96d6eb224379 | 44 | protected: |
12104404 | 0:96d6eb224379 | 45 | I2C _y_i2c; |
12104404 | 0:96d6eb224379 | 46 | I2C _x_imu_i2c; |
12104404 | 0:96d6eb224379 | 47 | BNO055 _imu; |
12104404 | 15:7729da55873a | 48 | DigitalIn _sw1; |
12104404 | 15:7729da55873a | 49 | DigitalIn _sw2; |
12104404 | 15:7729da55873a | 50 | DigitalIn _sw3; |
12104404 | 15:7729da55873a | 51 | DigitalIn _sw4; |
12104404 | 6:0602a9e8118b | 52 | |
12104404 | 1:8966a48ce8d5 | 53 | BNO055_GRAVITY_TypeDef _gravity; |
12104404 | 1:8966a48ce8d5 | 54 | BNO055_LIN_ACC_TypeDef _accel; |
12104404 | 1:8966a48ce8d5 | 55 | LOCALIZE_xya _xya; |
12104404 | 13:c62f975dfcfe | 56 | |
12104404 | 0:96d6eb224379 | 57 | }; |
12104404 | 0:96d6eb224379 | 58 | |
12104404 | 0:96d6eb224379 | 59 | #endif //LOCALIZE_H |