Написал код для интервалометра на Ардуино, осталось 4 кнопки у dip переключателя, я хочу поставить на них выставление времени (30,60,90,120мин ну или что-то в этом роде), нужно чтоб когда это время прошло цикл полностью остановился, а не давал команду камере до талого, пока не разрядиться
int DIP5 = 0;
int DIP6 = 0;
int DIP7 = 0;
int DIP8 = 0;
int DIP9 = 0;
int DIP10 = 0;
int DIP11 = 0;
int DIP12 = 0;
void setup() {
Serial.begin(9600);
pinMode(3, OUTPUT); //Pin 3 triggers camera via optop-isolator
pinMode(LED_BUILTIN, OUTPUT); //Output to LED for testing - optional
pinMode(5, INPUT_PULLUP); // 1 СЕК
pinMode(6, INPUT_PULLUP); // 2 СЕК
pinMode(7, INPUT_PULLUP); // 3 СЕК
pinMode(8, INPUT_PULLUP); // 4 СЕК
pinMode(9, INPUT_PULLUP); // 5 second input
pinMode(10, INPUT_PULLUP); // 10 second input
pinMode(11, INPUT_PULLUP); // 30 second input
pinMode(12, INPUT_PULLUP); // 60 second input
}
// the loop function runs over and over again forever
void loop() {
DIP5 = digitalRead(5);
DIP6 = digitalRead(6);
DIP7 = digitalRead(7);
DIP8 = digitalRead(8);
DIP9 = digitalRead(9);
DIP10 = digitalRead(10);
DIP11 = digitalRead(11);
DIP12 = digitalRead(12);
Serial.println(DIP5);
Serial.println(DIP6);
Serial.println(DIP7);
Serial.println(DIP8);
Serial.println(DIP9);
Serial.println(DIP10);
Serial.println(DIP11);
Serial.println(DIP12);
if (DIP5 == LOW || DIP6 == LOW || DIP7 == LOW || DIP8 == LOW || DIP9 == LOW || DIP10 == LOW || DIP11 == LOW || DIP12 == LOW){
digitalWrite(3, HIGH);
digitalWrite(LED_BUILTIN, HIGH);
Serial.println("trigger active");
delay(150);
digitalWrite(3, LOW);
Serial.println("trigger off");
digitalWrite(LED_BUILTIN, LOW); //LED may be omitted if expedient (low light, etc)
}
if (DIP5 == LOW) delay(1000);
if (DIP6 == LOW) delay(2000);
if (DIP7 == LOW) delay(3000);
if (DIP8 == LOW) delay(4000);
if (DIP9 == LOW) delay(5000); //5 second delay
if (DIP10 == LOW) delay(10000); //10 second delay
if (DIP11 == LOW) delay(30000); //30 second delay
if (DIP12 == LOW) delay(60000); //60 second delay
}