nucleo側のプログラム
Dependents: serial_connected_mcu_nucleo serial_connected_mcu_nucleo
Fork of serial_connected_mcu by
Diff: serial_connected_mcu.hpp
- Revision:
- 11:6f8e34a71c7e
- Parent:
- 6:a0cc9c27cedf
- Child:
- 12:810a484f113f
--- a/serial_connected_mcu.hpp Sun Jul 10 22:43:30 2016 +0000 +++ b/serial_connected_mcu.hpp Sat Jul 30 06:00:59 2016 +0000 @@ -10,27 +10,6 @@ class serial_connected_mcu { public: - enum servo_id { - SERVO_0, - SERVO_1, - SERVO_2, - SERVO_NUM - }; - - enum encoder_id { - ENCODER_0, - ENCODER_1, - ENCODER_2, - ENCODER_NUM - }; - - enum analog_input_id { - ANALOG_IN_0, - ANALOG_IN_1, - ANALOG_IN_2, - ANALOG_INPUT_NUM - }; - static serial_connected_mcu* instance(); void update(); @@ -46,16 +25,22 @@ static const int16_t _init_write_data[SIZE_OF_WRITE_DATA]; - static const PinName _servo_pins[SERVO_NUM]; - - static TIM_TypeDef* _encoder_timers[ENCODER_NUM]; + static const PinName _servo_pins[]; + static TIM_TypeDef* _encoder_timers[]; static const size_t _encoder_pulse_per_revol; + static const PinName _analog_input_pins[]; - static const PinName _analog_input_pins[ANALOG_INPUT_NUM]; + static const size_t _servo_num; + static const size_t _encoder_num; + static const size_t _analog_input_num; - servo* _servos[SERVO_NUM]; - rotary_encoder_ab_phase* _encoders[ENCODER_NUM]; - AnalogIn* _analog_inputs[ANALOG_INPUT_NUM]; + servo** _servos; + rotary_encoder_ab_phase** _encoders; + AnalogIn** _analog_inputs; + + float* _prev_encoders_values; + float + Timer _timer; serial_connected_mcu_slave _slave; };