int stateLast;
int stateNow = 2; // 1- open, 2- close, 3- stop
#define forwardPin 2
#define backwardPin 3
void ISR() {
Serial.println("Press");
switch(stateNow){
case 1:
stateNow = 3;
stateLast = 1;
digitalWrite(forwardPin, LOW);
digitalWrite(backwardPin,LOW);
break;
case 2:
stateNow = 3;
stateLast = 2;
digitalWrite(forwardPin, LOW);
digitalWrite(backwardPin,LOW);
break;
case 3:
if (stateLast = 1){
stateNow = 2;
digitalWrite(3, HIGH);
}
if (stateLast = 2){
stateNow = 1;
digitalWrite(2, HIGH);
}
break;
}
}
void setup() {
Serial.begin(115200);
Serial.println("Hello, ESP32-C3!");
pinMode(18, INPUT);
attachInterrupt(digitalPinToInterrupt(18), ISR, RISING);
pinMode(forwardPin, OUTPUT);
pinMode(backwardPin, OUTPUT);
digitalWrite(forwardPin, LOW);
digitalWrite(backwardPin,LOW);
}
void loop() {
if (digitalRead(18)){
Serial.println("High");
}
}