NHK2021_ikarashiSolenoidValve
Dependents: NHK2021_ikarashiSV_code NHK2021_ikarashiSV_code_withservo 2021NHK_B_syudo
Diff: ikarashiSV.h
- Revision:
- 0:2b253298d427
- Child:
- 1:696f7c0ab1bd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ikarashiSV.h Mon Oct 11 07:48:12 2021 +0000 @@ -0,0 +1,65 @@ +/** @ikarashiSV.h + * + * NHK2021Bチーム 電磁弁のライブラリです + * @attention 回路が悪いのか電磁弁が悪いのかわかりませんが、訳あってpin_c,pin_dの代入値を本来とは逆にしています。 + */ +#ifndef ikarashi_SOLENOID +#define ikarashi_SOLENOID + +#include "mbed.h" + +/** ikrashiSV + * + * 電磁弁が動かせます + */ +class ikarashiSV +{ +public: + + /** コンストラクタ + * + * @param pin_a 下の電磁弁 + * @param pin_b ↑同じ + * + * @param pin_c 上の電磁弁 + * @param pin_d ↑同じ + */ + ikarashiSV(PinName pin_a,PinName pin_b,PinName pin_c,PinName pin_d); + + /** 使っても使わなくてもいいやつ + * + * state って言いう変数に+1します(state初期値0) + */ + void add_state(); + + /** 大本命関数 + * + * _state = 1 ・・・ 下の電磁弁が押す + * _state = 2 ・・・ 上の電磁弁が押す(投げる) + * _state = 0 ・・・ 元に戻る + * @param _state 条件分岐用変数 + */ + void solenoid(int _state); + + /** 電磁弁の状態を確認する関数 + * 押していたらpushで、引いていたらpullです + */ + void solenoid_show(); + + /** 使わなくてもいい(n回目) + * + * @return state を返します + */ + int state_show(); +private: + int state; + int _state; + int solenoid_status; + DigitalOut port_a;//1 下の電磁弁 + DigitalOut port_b;// + + DigitalOut port_c;//2 上の電磁弁 + DigitalOut port_d;// +}; + +#endif \ No newline at end of file