takeshi yoshida / Mbed 2 deprecated 2016_lambdaController

Dependencies:   mbed

Dependents:  

Committer:
gakuburu
Date:
Wed Sep 14 14:08:51 2016 +0000
Revision:
7:5b74ff881644
Parent:
6:c4e901c6001a
bug fixed?

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gakuburu 0:1b682aa7d935 1 #ifndef LAMBDA_CONTROLLER_H
gakuburu 0:1b682aa7d935 2 #define LAMBDA_CONTROLLER_H
gakuburu 0:1b682aa7d935 3
gakuburu 0:1b682aa7d935 4 #include "mbed.h"
gakuburu 0:1b682aa7d935 5
gakuburu 0:1b682aa7d935 6 class LambdaController {
gakuburu 0:1b682aa7d935 7 public:
gakuburu 0:1b682aa7d935 8 LambdaController(PinName tx, PinName rx);
gakuburu 0:1b682aa7d935 9
gakuburu 6:c4e901c6001a 10 uint16_t get_all_switch(void);
gakuburu 0:1b682aa7d935 11 bool get_switch(int num);
gakuburu 0:1b682aa7d935 12
gakuburu 0:1b682aa7d935 13 enum AxisId {
gakuburu 0:1b682aa7d935 14 Stick0X, Stick0Y, Stick1X, Stick1Y
gakuburu 0:1b682aa7d935 15 };
gakuburu 0:1b682aa7d935 16 int get_raw_axis(AxisId id);
gakuburu 0:1b682aa7d935 17 double get_axis(AxisId id);
gakuburu 0:1b682aa7d935 18 void initialize_axis(void);
gakuburu 0:1b682aa7d935 19 void initialize_axis(AxisId id);
gakuburu 0:1b682aa7d935 20
gakuburu 0:1b682aa7d935 21 enum ErrorFactor {
gakuburu 4:c35227d14896 22 NoError, NoDataError, TimeoutError, InvalidDataError, SerialBusyError
gakuburu 0:1b682aa7d935 23 };
gakuburu 0:1b682aa7d935 24 ErrorFactor get_error();
gakuburu 0:1b682aa7d935 25
gakuburu 0:1b682aa7d935 26 private:
gakuburu 0:1b682aa7d935 27 Serial twe_lite;
gakuburu 0:1b682aa7d935 28
gakuburu 0:1b682aa7d935 29 void data_receive_isr();
gakuburu 0:1b682aa7d935 30 int buffer_head;
gakuburu 7:5b74ff881644 31 uint8_t received_data[11];
gakuburu 7:5b74ff881644 32 uint8_t received_buffer[11];
gakuburu 0:1b682aa7d935 33 bool is_axis_initialized;
gakuburu 0:1b682aa7d935 34 int axis_center[4];
gakuburu 0:1b682aa7d935 35 static const double axis_threshold = 0.012;
gakuburu 5:57c6d5db3d52 36
gakuburu 5:57c6d5db3d52 37 Timer error_timer;
gakuburu 0:1b682aa7d935 38 int error_count;
gakuburu 0:1b682aa7d935 39 ErrorFactor error_id;
gakuburu 0:1b682aa7d935 40 static const int error_threshold = 5;
gakuburu 3:9f80eee7aa78 41 static const double timeout_time = 0.5;
gakuburu 0:1b682aa7d935 42 };
gakuburu 0:1b682aa7d935 43
gakuburu 0:1b682aa7d935 44 #endif
gakuburu 0:1b682aa7d935 45
gakuburu 4:c35227d14896 46
gakuburu 5:57c6d5db3d52 47