takeshi yoshida / Mbed 2 deprecated 2016_lambdaController

Dependencies:   mbed

Dependents:  

Committer:
gakuburu
Date:
Tue Aug 23 05:10:44 2016 +0000
Revision:
0:1b682aa7d935
Child:
3:9f80eee7aa78
new controller's programs

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 #include <math.h>
gakuburu 0:1b682aa7d935 6
gakuburu 0:1b682aa7d935 7 class LambdaController {
gakuburu 0:1b682aa7d935 8 public:
gakuburu 0:1b682aa7d935 9 LambdaController(PinName tx, PinName rx);
gakuburu 0:1b682aa7d935 10
gakuburu 0:1b682aa7d935 11 uint8_t get_all_switch(void);
gakuburu 0:1b682aa7d935 12 bool get_switch(int num);
gakuburu 0:1b682aa7d935 13
gakuburu 0:1b682aa7d935 14 enum AxisId {
gakuburu 0:1b682aa7d935 15 Stick0X, Stick0Y, Stick1X, Stick1Y
gakuburu 0:1b682aa7d935 16 };
gakuburu 0:1b682aa7d935 17 int get_raw_axis(AxisId id);
gakuburu 0:1b682aa7d935 18 double get_axis(AxisId id);
gakuburu 0:1b682aa7d935 19 void initialize_axis(void);
gakuburu 0:1b682aa7d935 20 void initialize_axis(AxisId id);
gakuburu 0:1b682aa7d935 21
gakuburu 0:1b682aa7d935 22 enum ErrorFactor {
gakuburu 0:1b682aa7d935 23 NoError, NoDataError, TimeoutError, InvalidDataError
gakuburu 0:1b682aa7d935 24 };
gakuburu 0:1b682aa7d935 25 ErrorFactor get_error();
gakuburu 0:1b682aa7d935 26 void debug(const char *format, ...);
gakuburu 0:1b682aa7d935 27
gakuburu 0:1b682aa7d935 28 private:
gakuburu 0:1b682aa7d935 29 Serial twe_lite;
gakuburu 0:1b682aa7d935 30
gakuburu 0:1b682aa7d935 31 void data_receive_isr();
gakuburu 0:1b682aa7d935 32 int buffer_head;
gakuburu 0:1b682aa7d935 33 uint8_t received_data[10];
gakuburu 0:1b682aa7d935 34 uint8_t received_buffer[10];
gakuburu 0:1b682aa7d935 35 bool is_axis_initialized;
gakuburu 0:1b682aa7d935 36 int axis_center[4];
gakuburu 0:1b682aa7d935 37 static const double axis_threshold = 0.012;
gakuburu 0:1b682aa7d935 38
gakuburu 0:1b682aa7d935 39 Ticker error_detection_timer;
gakuburu 0:1b682aa7d935 40 void error_detection_isr();
gakuburu 0:1b682aa7d935 41 int error_count;
gakuburu 0:1b682aa7d935 42 ErrorFactor error_id;
gakuburu 0:1b682aa7d935 43 static const int error_threshold = 5;
gakuburu 0:1b682aa7d935 44 };
gakuburu 0:1b682aa7d935 45
gakuburu 0:1b682aa7d935 46 #endif
gakuburu 0:1b682aa7d935 47