#include <Servo.h> // Servo Servo flush; // const int buttonPin = 2; // const int led = 4; // int buttonState = 0; // int flag = 0; // unsigned long holdTime = 0; // unsigned long blinkTime = 0; // unsigned long loadTime = 0; // void setup() { pinMode(led, OUTPUT); // pinMode(buttonPin, INPUT); // flush.attach(3, 8, 140); // 3 / flush.write(8); // } void loop(){ buttonState = digitalRead(buttonPin); // if (buttonState == LOW && flag == 0) { // flush.write(8); // digitalWrite(led, LOW); // } if (buttonState == HIGH && flag == 0) { // delay(100); // flush.write(140); // flag = 1; // holdTime = millis(); // } if (buttonState == HIGH && flag == 1 && millis()-holdTime > 200) { // X flag = 0; // blinkTime = millis(); // do { digitalWrite(led, LOW); // delay(200); digitalWrite(led, HIGH); // delay(200); } while (millis()-blinkTime < 5000); // X flush.write(8); // loadTime = millis(); // do { digitalWrite(led, LOW); // delay(200); digitalWrite(led, HIGH); // delay(200); } while (millis()-loadTime < 54000); // X ( ) } if (buttonState == LOW && flag == 1 && millis()-holdTime <= 200) { // X flag = 0; // blinkTime = millis(); // do { digitalWrite(led, LOW); // delay(200); digitalWrite(led, HIGH); // delay(200); } while (millis()-blinkTime < 2000); // X flush.write(8); // loadTime = millis(); // do { digitalWrite(led, LOW); // delay(200); digitalWrite(led, HIGH); // delay(200); } while (millis()-loadTime < 30000); // X } }
Source: https://habr.com/ru/post/223125/
All Articles