nucleo側のプログラム
Dependents: serial_connected_mcu_nucleo serial_connected_mcu_nucleo
Fork of serial_connected_mcu by
serial_connected_mcu.hpp@15:9a50a5a747ad, 2016-08-01 (annotated)
- Committer:
- inst
- Date:
- Mon Aug 01 05:33:09 2016 +0000
- Revision:
- 15:9a50a5a747ad
- Parent:
- 12:810a484f113f
- Child:
- 16:4e310c3f3a2b
USE_LIFTER_MODE ???;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
inst | 0:9ca9a6eddffa | 1 | #ifndef INCUDED_SERIAL_CONNECTED_MCU_HPP |
inst | 0:9ca9a6eddffa | 2 | #define INCUDED_SERIAL_CONNECTED_MCU_HPP |
inst | 0:9ca9a6eddffa | 3 | |
inst | 0:9ca9a6eddffa | 4 | #include "rotary_encoder_ab_phase.hpp" |
inst | 0:9ca9a6eddffa | 5 | #include "servo.hpp" |
inst | 4:1323ef48a984 | 6 | #include "serial_connected_mcu_slave.hpp" |
inst | 0:9ca9a6eddffa | 7 | #include "mbed.h" |
inst | 0:9ca9a6eddffa | 8 | |
inst | 0:9ca9a6eddffa | 9 | namespace serial_connected_mcu { |
inst | 0:9ca9a6eddffa | 10 | |
inst | 0:9ca9a6eddffa | 11 | class serial_connected_mcu { |
inst | 0:9ca9a6eddffa | 12 | public: |
inst | 0:9ca9a6eddffa | 13 | static serial_connected_mcu* instance(); |
inst | 0:9ca9a6eddffa | 14 | void update(); |
inst | 0:9ca9a6eddffa | 15 | |
inst | 0:9ca9a6eddffa | 16 | private: |
inst | 0:9ca9a6eddffa | 17 | serial_connected_mcu(); |
inst | 2:9d7a03c79cd3 | 18 | ~serial_connected_mcu(); |
inst | 0:9ca9a6eddffa | 19 | |
inst | 0:9ca9a6eddffa | 20 | // 実体を記述しない |
inst | 0:9ca9a6eddffa | 21 | void operator=(const serial_connected_mcu&); |
inst | 0:9ca9a6eddffa | 22 | serial_connected_mcu(const serial_connected_mcu&); |
inst | 0:9ca9a6eddffa | 23 | |
inst | 0:9ca9a6eddffa | 24 | static serial_connected_mcu* _instance; |
inst | 0:9ca9a6eddffa | 25 | |
inst | 6:a0cc9c27cedf | 26 | static const int16_t _init_write_data[SIZE_OF_WRITE_DATA]; |
inst | 6:a0cc9c27cedf | 27 | |
inst | 11:6f8e34a71c7e | 28 | static const PinName _servo_pins[]; |
inst | 11:6f8e34a71c7e | 29 | static TIM_TypeDef* _encoder_timers[]; |
inst | 0:9ca9a6eddffa | 30 | static const size_t _encoder_pulse_per_revol; |
inst | 11:6f8e34a71c7e | 31 | static const PinName _analog_input_pins[]; |
inst | 0:9ca9a6eddffa | 32 | |
inst | 11:6f8e34a71c7e | 33 | static const size_t _servo_num; |
inst | 11:6f8e34a71c7e | 34 | static const size_t _encoder_num; |
inst | 11:6f8e34a71c7e | 35 | static const size_t _analog_input_num; |
inst | 0:9ca9a6eddffa | 36 | |
inst | 11:6f8e34a71c7e | 37 | servo** _servos; |
inst | 11:6f8e34a71c7e | 38 | rotary_encoder_ab_phase** _encoders; |
inst | 11:6f8e34a71c7e | 39 | AnalogIn** _analog_inputs; |
inst | 11:6f8e34a71c7e | 40 | |
inst | 15:9a50a5a747ad | 41 | #ifdef USE_LIFTER_MODE |
inst | 15:9a50a5a747ad | 42 | enum { |
inst | 15:9a50a5a747ad | 43 | UPPER_LIMIT, |
inst | 15:9a50a5a747ad | 44 | LOWER_LIMIT, |
inst | 15:9a50a5a747ad | 45 | LIMIT_SWITCHES_NUM |
inst | 15:9a50a5a747ad | 46 | }; |
inst | 15:9a50a5a747ad | 47 | static const PinName _limit_switch_pins[LIMIT_SWITCHES_NUM]; |
inst | 15:9a50a5a747ad | 48 | DigitalIn* _limit_switches[LIMIT_SWITCHES_NUM]; |
inst | 15:9a50a5a747ad | 49 | #endif |
inst | 15:9a50a5a747ad | 50 | |
inst | 11:6f8e34a71c7e | 51 | float* _prev_encoders_values; |
inst | 11:6f8e34a71c7e | 52 | Timer _timer; |
inst | 4:1323ef48a984 | 53 | |
inst | 4:1323ef48a984 | 54 | serial_connected_mcu_slave _slave; |
inst | 0:9ca9a6eddffa | 55 | }; |
inst | 0:9ca9a6eddffa | 56 | |
inst | 0:9ca9a6eddffa | 57 | } /* namespace serial_connected_mcu */ |
inst | 0:9ca9a6eddffa | 58 | |
inst | 0:9ca9a6eddffa | 59 | #endif |