一応使える。
Dependents: Nucleo_NHK_2018_syudo_wheel 2018NHK_gaku_ver2
solenoid_valve.cpp
00001 #include "solenoid_valve.h" 00002 00003 PortValve::PortValve(PinName digitalPin1, PinName digitalPin2): 00004 angle1(digitalPin1), 00005 angle2(digitalPin2) 00006 { 00007 valvetTime.start(); 00008 valveDt = 0.0; 00009 } 00010 00011 void PortValve::inputState(int state) 00012 { 00013 valveDt = valvetTime.read(); 00014 if(((int)state==0)&&(airStatus == 1)) airStatus=1; 00015 if(((int)state==1)&&(airStatus == 0)) airStatus=0; 00016 if(((int)state==1) && (airStatus==0)) { 00017 angle1=0; 00018 angle2=1; 00019 airFlag=1; 00020 airStatus=1; 00021 } else if(((int)state==0) && (airStatus==1)) { 00022 angle1=1; 00023 angle2=0; 00024 airFlag=1; 00025 airStatus=0; 00026 } 00027 if(airFlag == 1) { 00028 valvetTime.reset(); 00029 airFlag = 0; 00030 valveDt = valvetTime.read(); 00031 } 00032 00033 if((airFlag == 0) && (valveDt > 0.30)) { 00034 angle1=0; 00035 angle2=0; 00036 } 00037 00038 }
Generated on Sun Jul 17 2022 00:04:49 by
1.7.2
naoki tanabe