volatile bool inPinForward = false;
volatile bool inPinStop = false;
#include <Servo.h>
Servo ESC;
int throttle = 180;
void setup() {
ESC.attach(0); //"прикрепляем" контроллер ESC к контакту 9 платы Arduino
//ESC.write(throttle);
//delay(2000);
ESC.write(0);
pinMode(2, INPUT);
pinMode(1, INPUT);
attachInterrupt(2, isrF, FALLING);
attachInterrupt(1, isrS, FALLING);
Serial.begin(9600);
delay(2000);
}
volatile uint32_t debounce;
void isrF() {
// if (millis() - debounce >= 200 && digitalRead(2)) {
// debounce = millis();
inPinForward = true;
// }
}
void isrS() {
// if (millis() - debounce >= 200 && digitalRead(1)) {
// debounce = millis();
inPinStop = true;
// }
}
void loop() {
if (inPinForward) {
Serial.println("! Forward !");
inPinForward = false;
ESC.write(throttle);
delay(1000);
}
if (inPinStop) {
Serial.println("! Stop !");
inPinStop = false;
ESC.write(0);
delay(1000);
}
}