Publishing for Biomimetics.
Dependencies: CRC MODDMA MODSERIAL MPU6050IMU PID QEI mbed-rtos mbed-src
sensors.h@0:8cfa73bb68e4, 2016-05-31 (annotated)
- Committer:
- abuchan
- Date:
- Tue May 31 17:04:59 2016 +0000
- Revision:
- 0:8cfa73bb68e4
Publishing for Biomimetics.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
abuchan | 0:8cfa73bb68e4 | 1 | #ifndef SENSORS_H |
abuchan | 0:8cfa73bb68e4 | 2 | #define SENSORS_H |
abuchan | 0:8cfa73bb68e4 | 3 | |
abuchan | 0:8cfa73bb68e4 | 4 | #include "mbed.h" |
abuchan | 0:8cfa73bb68e4 | 5 | |
abuchan | 0:8cfa73bb68e4 | 6 | #include "MPU6050.h" |
abuchan | 0:8cfa73bb68e4 | 7 | #include "QEI.h" |
abuchan | 0:8cfa73bb68e4 | 8 | |
abuchan | 0:8cfa73bb68e4 | 9 | #include "protocol.h" |
abuchan | 0:8cfa73bb68e4 | 10 | |
abuchan | 0:8cfa73bb68e4 | 11 | class Sensors { |
abuchan | 0:8cfa73bb68e4 | 12 | |
abuchan | 0:8cfa73bb68e4 | 13 | public: |
abuchan | 0:8cfa73bb68e4 | 14 | |
abuchan | 0:8cfa73bb68e4 | 15 | Sensors( |
abuchan | 0:8cfa73bb68e4 | 16 | Timer *system_timer, |
abuchan | 0:8cfa73bb68e4 | 17 | PinName voltage_pin, |
abuchan | 0:8cfa73bb68e4 | 18 | PinName l_enc_a_pin, PinName l_enc_b_pin, |
abuchan | 0:8cfa73bb68e4 | 19 | PinName r_enc_a_pin, PinName r_enc_b_pin, uint32_t tick_per_rev, |
abuchan | 0:8cfa73bb68e4 | 20 | PinName imu_sda_pin, PinName imu_scl_pin); |
abuchan | 0:8cfa73bb68e4 | 21 | |
abuchan | 0:8cfa73bb68e4 | 22 | float get_voltage(void); |
abuchan | 0:8cfa73bb68e4 | 23 | void get_encoders(int32_t (&encoders)[2]); |
abuchan | 0:8cfa73bb68e4 | 24 | void get_angles(float* angles); |
abuchan | 0:8cfa73bb68e4 | 25 | bool get_imu(sensor_data_t* sensor_data); |
abuchan | 0:8cfa73bb68e4 | 26 | |
abuchan | 0:8cfa73bb68e4 | 27 | bool fill_sensor_packet(packet_t* packet); |
abuchan | 0:8cfa73bb68e4 | 28 | |
abuchan | 0:8cfa73bb68e4 | 29 | private: |
abuchan | 0:8cfa73bb68e4 | 30 | |
abuchan | 0:8cfa73bb68e4 | 31 | Timer* system_timer_; |
abuchan | 0:8cfa73bb68e4 | 32 | AnalogIn voltage_pin_; |
abuchan | 0:8cfa73bb68e4 | 33 | QEI left_qei_; |
abuchan | 0:8cfa73bb68e4 | 34 | QEI right_qei_; |
abuchan | 0:8cfa73bb68e4 | 35 | MPU6050 mpu6050_; |
abuchan | 0:8cfa73bb68e4 | 36 | bool imu_ready_; |
abuchan | 0:8cfa73bb68e4 | 37 | }; |
abuchan | 0:8cfa73bb68e4 | 38 | |
abuchan | 0:8cfa73bb68e4 | 39 | #endif |